我幾乎閱讀了關於stack overflow中onSaveInstanceState和onRestoreInstanceState的所有文章,但無法解決我的問題。
我在我的main.java中有一個文本視圖和按鈕,當你點擊一個按鈕的值(一個是一個int變量)變量將增加並顯示在文本視圖中,但是當我旋轉我的手機方向更改),文本視圖重置。如何使用onSaveInstanceState和onRestoreInstanceState保存狀態,同時方向更改
我重寫onSaveInstanceState和onRestoreInstanceState,但它不起作用。 還有一件事,我爲景觀視圖有特殊的layout-land.xml文件。
這裏是我的代碼
import android.app.Activity;
import android.graphics.Typeface;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class main extends Activity {
/** Called when the activity is first created. */
public int a = 0;
public String fonts="TAHOMA.TTF";
TextView tv = (TextView) findViewById(R.id.salavat);
Button b = (Button) findViewById(R.id.showsalavat);
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
b.setOnClickListener(new Button.OnClickListener() {
public void onClick(View arg0) {
a++;
tv.setText(""+a);
}
});
}
@Override
protected void onSaveInstanceState(Bundle SavedInstanceState) {
super.onSaveInstanceState(SavedInstanceState);
SavedInstanceState.putInt("salavat-count", a);
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
a= savedInstanceState.getInt ("salavat-count");
}
}
,在這裏我的main.xml
<TextView android:id="@+id/shoma" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="right" android:text="@string/shoma" android:textSize="20sp" /> <Button android:id="@+id/showsalavat" android:layout_width="fill_parent" android:layout_height="150dp" android:text="+" android:textSize="100sp" /> <TextView android:id="@+id/eltemas" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginBottom="55dp" android:text="@string/eltemas" /> <TextView android:id="@+id/salavat" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Large Text" android:textAppearance="?android:attr/textAppearanceLarge" android:textSize="35sp" /> <TextView android:id="@+id/ferestade" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginBottom="24dp" android:text="@string/salavat" android:textSize="20sp" /> </LinearLayout>
我真的需要一些幫助。 我真的很感謝你的幫助。
嚴重?這可能是我見過的最糟糕的格式化代碼... – 2012-04-21 14:35:03
@AlexLockwood我知道我要編輯並整理好,但後來我就像W ... T ... H – Blundell 2012-04-21 14:41:10
@Alexlockwood:D。你是對的,因爲我是機器人中的新人。 – 2012-04-21 14:58:51