2017-10-04 45 views
0

所以,我只是试图有一个数组的值,并有一个textview“填充”与我指定一个按下按钮。为什么在尝试从数组中插入字符串到TextView时,应用程序崩溃?

public class MainActivity extends AppCompatActivity { 

String arr[]={"a","b","c","d","e"}; 

TextView tv = (TextView)findViewById(R.id.tv); 

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

} 

private void setLaunchBtn() { 
    Button btn = (Button) findViewById(R.id.btn1); 
    btn.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      tv.setText(arr[2]); 
     } 
    }); 
} 

出于某种原因,我不能让应用程序在所有推出,即使我尝试tv.setText("inserttext");

+0

分享你的错误日志和初始化里面TextView的创建 –

回答

0

我认为你不能找到在视图声明中的观点,你必须找到意见后的setContentView()方法,就像这样:

public class MainActivity extends AppCompatActivity { 

String arr[]={"a","b","c","d","e"}; 

TextView tv; // Remove findViewById 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    tv = (TextView)findViewById(R.id.tv); // Try with this 
    tv.setText("Hello"); 
    setLaunchBtn(); // You need to call this method to execute it 
} 

private void setLaunchBtn() { 
    Button btn = (Button) findViewById(R.id.btn1); 
    btn.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      tv.setText(arr[2]); 
     } 
    }); 
} 

希望它能帮助,

+0

应用程序是LA现在整理,但按钮似乎不做任何事情,无论是数组和纯文本。 – PQuix

+0

请再次检查我的代码,我添加了setLaunchBtn();在onCreate方法 – Crono

+0

当然......我不知道我是怎么错过的,甚至。非常感谢您花时间帮助菜鸟:) – PQuix

相关问题