如何进行实时对话?

时间:2015-10-21 07:37:13

标签: android dialog runtime

我必须构建一个自定义对话框,在更改内容视图时更新视图。

在下面的示例中,我有两个TextView,一个在主活动中,一个在对话框布局中,计数器从1到10应显示在两个(主活动布局和对话框布局)上,但只有{主要活动中的{1}}是更新。

代码:

TextView

问题是 - 如何更新TextView tvCounter_Dialog, tvCounter_OutsideDialog; int counter = 0; Handler handler; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_live_custom_dialog); handler = new Handler(); View dialogView = getLayoutInflater().inflate(R.layout.dialog_live_layout, null); tvCounter_Dialog = (TextView) dialogView.findViewById(R.id.tvCounter); tvCounter_OutsideDialog = (TextView) findViewById(R.id.tvCounter_outsideDialog); Dialog counterDialog = new Dialog(this); counterDialog.setContentView(R.layout.dialog_live_layout); counterDialog.show(); final Runnable updatedr = new Runnable() { @Override public void run() { counter = (counter + 1) % 10; tvCounter_Dialog.setText(String.valueOf(counter)); tvCounter_OutsideDialog.setText(String.valueOf(counter)); handler.postDelayed(this, 500); } }; updatedr.run(); } 中的textview

编辑:这是一个捕获(更清楚)

enter image description here

1 个答案:

答案 0 :(得分:1)

错误就在这一行

 counterDialog.setContentView(R.layout.dialog_live_layout);

应该是

counterDialog.setContentView(dialogView);

在你的版本中,对话框的自定义视图和你膨胀的视图是不同的