我自定义的多选框可以选择,但是一点击确认(也就是文中的yes)就闪退了呢?(后续)
https://class.imooc.com/course/qadetail/106256
我一不小心点击了采纳答案,请老师问可以继续帮我看看吗?
我继续最后老师的问题:我的check_dialog布局中没有那两个textview控件,他们在我的activity_main里面,因为这两个textview的内容最后是要显示在主界面的,而不是对话框里。
1
收起
正在回答
2回答
你可以开始加载完TextView后让其隐藏,等点击对话框中的按钮后再让其可见,CheckDialog设置为MainActivity的内部类就可以直接处理TextView了。你可以参考老师帮你修改的如下代码:
public class MainActivity extends AppCompatActivity {
private TextView tv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn = findViewById(R.id.button);
tv = findViewById(R.id.textView);
tv.setVisibility(View.INVISIBLE);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
CheckDialog1 dialog = new CheckDialog1(MainActivity.this, 0);
dialog.show();
}
});
}
class CheckDialog1 extends Dialog {
private Button yes;
public CheckDialog1(@NonNull final Context context, int themeResId) {
super(context, themeResId);
setContentView(R.layout.checkbox_dialog);
yes = findViewById(R.id.yes);
yes.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
tv.setVisibility(View.VISIBLE);
tv.setText("个人爱好:");
dismiss();
}
});
}
}
}
Android零基础入门2018版
- 参与学习 人
- 提交作业 5461 份
- 解答问题 7235 个
此次推出的专题为Android攻城狮培养计划的第一部分语法与界面基础篇,将带大家从0开始学习Android开发。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星