setText方法崩溃Android应用程序

时间:2014-12-30 07:31:35

标签: android reference crash textview settext

我正在编写一个需要在TextView上使用setText()的Android应用程序,这应该很简单,但每次,当应用程序到达方法时,应用程序崩溃。我有另一个应用程序,我编码完全相同,据我所知,(当然,变量名称除外)有效。我最好的猜测是它与引用有关,但我已经检查了那些我知道如何检查的内容。

这是我的XML布局代码:     

<TextView
    android:id="@+id/test"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Yay!" />

我的Java活动代码:

package com.example.campgames;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.CheckBox;
import android.widget.TextView;
import android.widget.Toast;

public class MainActivity extends Activity {

TextView test;
CheckBox lowerElem;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    test=(android.widget.TextView)findViewById(R.id.test);
    lowerElem=(CheckBox)findViewById(R.id.lower_elem);

}

public void click(View view){
    test.setText(R.string.inside);
    setContentView(R.layout.activity_results);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

}

感谢您的帮助,如果我做错了,请告诉我。第一次海报!

5 个答案:

答案 0 :(得分:1)

尝试使用

String textToSet = (String) yourContext.getResources().getText(R.string.inside); test.setText(textToSet);

答案 1 :(得分:1)

试试这个:

public void click(查看视图){
   test.setText(getResources()的getString(R.string.inside));

}

而不是

test.setText(R.string.inside);

答案 2 :(得分:0)

试试这个......

 public void click(View view){
        test.setText(getResources().getString(R.string.inside));
    }

快乐编码: - )

答案 3 :(得分:0)

试试这个:

 test.setText(getResources().getString(R.String.mycar));

而不是

test.setText(R.string.inside);

答案 4 :(得分:0)

从click()方法中删除此行。

setContentView(R.layout.activity_results);