13

あるアクティビティから別のアクティビティに移動したい (仮想デバイスを使用)。ボタンをクリックして移動すると、エミュレーターにダイアログボックスが表示されますunfortunately SMS1 has stopped working(SMS1 はアプリ名です)。

私のコードを修正するのを手伝ってくれる人はいますか?

MainActivity.java:

package com.example.sms1;

 import android.os.Bundle;
 import android.app.Activity;
 import android.content.Intent;
 import android.view.Menu;
 import android.view.View;
 import android.view.View.OnClickListener;
 import android.widget.Button;
 import android.widget.TextView;

 public class MainActivity extends Activity implements OnClickListener
 {

Button b1;
TextView tv1;
 @Override
 protected void onCreate(Bundle savedInstanceState)
 {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    b1 = (Button) findViewById(R.id.button1);
    tv1 = (TextView) findViewById(R.id.textView1);

    b1.setOnClickListener(this);

 }

@Override
public boolean onCreateOptionsMenu(Menu menu)
{
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

@Override
public void onClick(View v)
{
    // TODO Auto-generated method stub
    Intent i = new Intent(getApplicationContext(),NextActivity.class);
    startActivity(i);
    setContentView(R.layout.avtivity_next);
}



}

これがNextActivityです

package com.example.sms1;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.widget.TextView;

public class NextActivity extends Activity {

TextView tv1;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.avtivity_next);
    tv1 = (TextView) findViewById(R.id.textView1);
}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

}

マニフェスト.XML

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.sms1"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="17" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name="com.example.sms1.MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

</manifest>

NextActivityLayout

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".NextActivity" >

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="next activity" />



</RelativeLayout>

MainActivity レイアウト

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/hello_world" />

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/textView1"
    android:layout_marginTop="80dp"
    android:layout_toRightOf="@+id/textView1"
    android:text="Button" />

</RelativeLayout>
4

14 に答える 14

2
public void onClick(View v)
{
 startActivity(new Intent(getApplicationContext(), Next.class));

}

2 番目のアクティビティを直接移動する方法であり、コール インテントは必要ありません。

于 2014-02-14T05:22:41.807 に答える
1

1)setContentView(R.layout.avtivity_next);この (メイン) アクティビティの onCreate() と同じように、次のアクティビティの onCreate() メソッドに配置します。

2) your-apps マニフェスト ファイルで next-activity を定義していない場合は、次のようにこれも行います。

<application
        android:allowBackup="true"
        android:icon="@drawable/app_icon"
        android:label="@string/app_name" >
        <activity
            android:name=".MainActivity"
            android:label="Main Activity" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".NextActivity"
            android:label="Next Activity" >
        </activity>
    </application>

新しいアクティビティを作成するたびに 2 番目のステップを実行する必要があります。そうしないと、アプリがクラッシュします

于 2013-07-08T12:47:26.640 に答える
1

2つのファイルで行われたAndroidの変更で、あるページから別のページに移動する必要がある場合

Intent intentSignUP = new Intent(this,SignUpActivity.class);
   startActivity(intentSignUP);

androidManifest ファイルにアクティビティを追加する

 <activity android:name=".SignUpActivity"></activity>
于 2017-07-25T06:49:40.653 に答える
0

以下のコードは、Android 4.3 で正常に動作しています。

Intent i = new Intent(this,MainActivity2.class);
startActivity(i);
于 2014-12-28T20:59:43.303 に答える
0

これは主に、「NextActivity」としてマニフェスト ファイルに未登録のアクティビティが原因です。まず、NextActivity を Manifest のように登録します。

<activity android:name=".NextActivity">

次に、必要な場所でコードを使用します

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

NextActivity を呼び出す必要がある場所..

于 2016-02-24T09:53:39.777 に答える
0

setContentView(R.layout.avtivity_next);

このコード行は次のアクティビティに移動する必要があると思います...

于 2013-07-08T12:35:31.817 に答える