我的“activity_main.xml”中有一个TextView元素:
<TextView
android:id="@+id/text1"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:text="@string/my_best_text"
android:background="#FF0000"
/>
并希望使用ID“text1”更改此TextView中的文本!我在我的“MainActivity.java”中试过这样的事情:
@Override
public void onNavigationDrawerItemSelected(int position) {
((TextView)findViewById(R.id.text1)).setText("Menu item selected -> " + position);
}
如何正确地做到这一点?
修改
我的应用程序崩溃了这两行
TextView txtView= ((TextView)findViewById(R.id.text1));
txtView.setText("Menu item selected -> " + position);
答案 0 :(得分:1)
如果您想更改程序中其他位置的文字,可以使用setText
对于您提供的文字,您希望将其更改为以下内容:
@Override
public void onNavigationDrawerItemSelected(int position) {
TextView txtView= ((TextView)findViewById(R.id.text1));
txtView.setText("Menu item selected -> " + position);
}
此外,如果您有TextView txtView= ((TextView)findViewById(R.id.text1));
,我建议您在onCreate
中填写此行:txtView.setText("Menu item selected -> " + position);
,然后在onNavigationDrawerItemSelected
中使用第二行:sys.stdout
或者你需要它的任何其他地方。
答案 1 :(得分:0)
尝试这种方式:
{{1}}
答案 2 :(得分:0)
有很多方法可以做到这一点,常见的方法是:
@Override
public void onNavigationDrawerItemSelected(int position) {
TextView textView1 = (TextView) findViewById(R.id.text1);
textView1.setText("Menu item selected -> " + position);
}
答案 3 :(得分:0)
这将起作用您可以将您的Java代码更改为:
@Override
public void onNavigationDrawerItemSelected(int position) {
TextView text = (TextView) findViewById(R.id.text1);
text.setText("Menu item selected -> " + position);
}