【发布时间】:2021-10-06 13:16:02
【问题描述】:
我有一个进度条,我想从另一个活动中更新一个课程。我为此目的使用该界面,但它没有做任何事情或给出错误。这是实现
public static class MyViewHolder extends RecyclerView.ViewHolder implements MyCallBack{
ProgressBar progressBar;
public MyViewHolder(@NonNull View itemView) {
super(itemView);
progressBar = itemView.findViewById(R.id.progress_bar);
}
@Override
public void updateMyText(int integer) {
progressBar.setProgress(integer);
}
}
}
interface MyCallBack {
public void updateMyText(int integer);
}
public class OtherActivity extends AppCompatActivity {
MyCallBack myCallBack;
@Override
public void onSavedState() {
myCallBack = new MyCallBack() {
@Override
public void updateMyText(int integer) {
progressBar.setProgress(90);
Toast.makeText(PlayerActivity.this, "call back", Toast.LENGTH_SHORT).show();
}
};
}
}
我尝试将其保存在OtherActivity的构造函数中
public OtherActivity(MyCallBack myCallBack) {
this.myCallBack = myCallBack;
}
myCallBack.updateMyText(90);
但它给出了一个错误说caused by: java.lang.instantiationexception: java.lang.class<com.example.myapp.otheractivity> has no zero argument constructor
任何建议都会对我有很大帮助。谢谢
【问题讨论】: