我正在Glass中创建一个Immersion
类型的应用。我尝试动态更改Activity
中的TextView,但是当我转到该Activity时程序崩溃了。我不想使用Cards
,因为它是一个身临其境的程序。
知道如何让TextView.setText
在常规活动中工作吗?
谢谢!
活动OnCreate方法
TextView tvTest = (TextView)findViewById(R.id.testText);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_new_checklist);
mGestureDetector = createGestureDetector(this);
readJson();
tvTest.setText("testing testing");
}
活动XML
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="40px"
tools:context=".NewChecklistActivity" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="top|center_horizontal"
android:text="@string/newChecklist"
android:textSize="50px"
android:textStyle="bold" />
<TextView
android:id="@+id/testText"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</FrameLayout>
答案 0 :(得分:1)
在setContentView:
之后将其移动到onCreateTextView tvTest = (TextView)findViewById(R.id.testText);
findViewByID()引用setContentView()膨胀的布局。所以你事先使用它,返回null,因此当你在tvTest上调用一个方法时会出现一个空指针异常。