-1

私は複数のアクティビティを持つアプリケーションに取り組んでおり、マニフェストとXMLレイアウトなどの間を行ったり来たりするのにうんざりしています。持つ方法はありますか

Intent intent = new Intent(MainActivity.this, MainActivity.Settings.class);

か何か?試したのでエラーは発生しませんが、アプリケーションを強制終了します。たとえば、異なる.javaのすべてのクラスを1つにバンドルすることができます。

public class MainActivity extends Activity
{
    ...
    @Override
    protected void onCreate(Bundle MainActivityState)
    {
        ...
    }

    public class Settings extends ...
    {
        ...
    }

    public class Register extends ...
    {
        ...
    }

    public class Login extends ...
    {
        ...
    }

    public class BeautifulLady extends personality ...
}
4

2 に答える 2

1

単純。試してはいけません。

アクティビティは、大まかに1つの画面、つまりユーザーが操作するものを表します。Androidはこの概念に基づいて構築されており、それを回避しようとすると涙が出ます。

それにこだわります。クラスを別々のファイルに入れ、レイアウトXMLをアクティビティごとに分けておくと、友達になり、慣れれば実際にスピードアップします。

アクティビティライフサイクルドキュメントから始めて、ペニーが落ちるまでそれを数回読んでください。次に、そこから拡張します。

http://developer.android.com/reference/android/app/Activity.html

自分自身を処理するクラスを備えたオブジェクト指向プログラミングは喜びであり、どのプラットフォームで開発するかに関わらず、予見可能な将来に向けて進む方法です(古い手、OOPと機能についての議論はありません;))。

モバイル開発を行う場合、アクティビティ、クラス、UIの分離は同じ概念ですが、異なる方法で行われます。

MVCプログラミングとそのいとこも参照してください。

http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller

幸運を。

于 2012-11-27T18:51:57.937 に答える
1

Activityおそらく、自分を'として定義してから、のSingle Top'ように自分からアクティビティを起動できますMainActivity.this.startActivity(new Intent(MainActivity.this, MainActivity.class)。次に入りonNewIntent()、再表示したいものを再表示します。このようにすると、画面は1つだけになります。

于 2012-11-27T19:57:36.777 に答える