我有这个班级
public class MainActivity extends Activity {
int mClicks = 1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final TextView clicksText = (TextView) findViewById(R.id.clicksText);
final Button myButton = (Button) findViewById(R.id.myButton);
myButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mClicks++;
clicksText.setText(mClicks + " clicks");
}
});
}
}
是不是应该在onSaveInstanceState上保存视图状态并在onCreate
恢复它?我单击按钮几次并旋转设备以找到与视图XML定义完全相同的UI。我不希望mClicks
被恢复,因为这是我的工作,而不是框架,但TextView应该保持之前的X点击!值。我错了吗?
答案 0 :(得分:2)
您可以尝试使用freezesText
http://developer.android.com/reference/android/widget/TextView.html#attr_android:freezesText
答案 1 :(得分:0)
默认onSaveInstanceState
保存EditText
文本(用户写的内容),但不保存TextView
文本,因为默认情况下它不会更改。如果您想保存它,您需要明确地在onSaveInstanceState
方法