我是Android / Java编程的新手,即使解决这个问题也很糟糕。我只是不明白哪里出了问题。我将创建一个新的Activity,将一个Extra放到Intent上,并希望在滚动视图中显示该字符串!启动此活动时,我的应用程序始终关闭。
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_parcelable_text);
dataTableScrollView = (RelativeLayout) findViewById(R.id.scrollView1);
Intent intent = getIntent();
if(savedInstanceState == null){
dataListView = intent.getStringExtra(MainActivity.EXTRA_PARCELABLE_TEXT)+
"\n";
}else{
dataListView += savedInstanceState.get(PARCELABLE_STRING)+
"\n";
}
setAllDataToListView();
}
private void setAllDataToListView(){
LayoutInflater inflater = (LayoutInflater) getSystemService(Context.
LAYOUT_INFLATER_SERVICE);
View newListViewElement = inflater.inflate(R.layout.activity_parcelable_text, null);
TextView newDataTextView = (TextView) newListViewElement.findViewById(R.id.scrollViewTextView);
newDataTextView.setText(dataListView);
dataTableScrollView.addView(newListViewElement, 0);
}
我只是不明白我在做什么错!而且我找不到正确的答案。
预先感谢您的回复!
您是否将活动类放入AndroidManifest.xml中?如果没有,就这样添加
<activity android:name="com.project.classname" />
并尝试将您的代码修改为此
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_parcelable_text);
dataTableScrollView = (RelativeLayout) findViewById(R.id.scrollView1);
//Get values for intent when activity started for firsttime
Bundle extras = getIntent().getExtras();
if (extras != null)
{
//Get dataListView as String
dataListView = extras.getString("dataListView");
}
//Get values on orientation
if( savedInstanceState != null )
{
dataListView = savedInstanceState.getString("dataListView");
}
//Add extra String PARCELABLE_STRING
dataListView += savedInstanceState.get(PARCELABLE_STRING)+"\n";
setAllDataToListView();
}
//save info when screen orientation
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putString("dataListView",dataListView);
}
private void setAllDataToListView(){
LayoutInflater inflater = (LayoutInflater) getSystemService(Context.
LAYOUT_INFLATER_SERVICE);
View newListViewElement = inflater.inflate(R.layout.activity_parcelable_text, null);
TextView newDataTextView = (TextView) newListViewElement.findViewById(R.id.scrollViewTextView);
newDataTextView.setText(dataListView);
dataTableScrollView.addView(newListViewElement, 0);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句