0

私はAndroidアプリを開発してきましたが、スマートフォンを横向きにすると小さな問題が発生しました。

現在、メインビュー(main.xml)とログインビュー(login.xml)の2つのビューがあります。login.xmlビューで電話を回すと、main.xmlビューに戻ります。電話が水平位置+login.xmlにあり、もう一度回すと(main.xmlに戻ります)、同じことが起こります。

「OnCreate」が毎回実行されることがわかります。アプリのコードは次のとおりです。

    public class AppActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    ImageButton bout= null;
    bout = (ImageButton)findViewById(R.id.imageButton1);

    bout.setOnClickListener(boutlisten);

}

private OnClickListener boutlisten = new OnClickListener(){
        public void onClick(View v) {
            setContentView(R.layout.login);


        }
    };
    }

前もって感謝します!

4

2 に答える 2

1

アクティビティを持つ新しいアクティビティを作成し、アクティビティをsetContentView(R.layout.login);開始します。

好き、

   public class LoginActivity extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.login);

}

}

補遺:これは、上記で宣言されたアクティビティを起動するためのコードです。マニフェストファイルでアクティビティを宣言する必要もあります

     private OnClickListener boutlisten = new OnClickListener(){
        public void onClick(View v) {
            Intent myIntent = new Intent(v.getContext(), LoginActivity.class);
            startActivity(myIntent);


        }
    };
于 2012-07-13T12:58:23.583 に答える
0

また、uはすでに認識している必要があるため、AndroidManifest.xmlで新しいアクティビティを宣言することを忘れないでください。

<activity android:name=".LoginActivity" />

または、アクティビティを強制的に垂直方向に実行することもできます。これをAndroidManifest.xmlのメインアクティビティタグに追加するだけです

<activity android:screenOrientation="portrait" ...../>
于 2012-07-13T13:11:24.167 に答える