намерения Android

#android

#Android

Вопрос:

Я работаю над Android. Я попробовал следующий код, но приложение не работает и показывает диалоговое окно с ошибкой, так как приложение неожиданно закрылось. Отображается сообщение об ошибке как ошибка времени выполнения, вызванная java.lang.Исключение NullPointer.

Я включаю сюда свой код и файлы манифеста..

IntentsActivity.java

 public class IntentsActivity extends Activity {
int request_code=1;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);


Button b=(Button)findViewById(R.id.button1);
b.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {
            startActivityForResult(new Intent(IntentsActivity.this,AnotherActivity.class),request_code);
        }
    });
}
public void onActivityResult(int requestcode, int resultcode, Intent data){
    if(requestcode==request_code)
        if(resultcode==RESULT_OK)
            Toast.makeText(getBaseContext(), "Data returned is " data.getData().toString(), Toast.LENGTH_SHORT).show(); 
}
}
  

AnotherActivity.java

 public class AnotherActivity extends Activity{
    public void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        setContentView(R.layout.anotherxml);



    Button btn=(Button)findViewById(R.id.button1);
    btn.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View arg0) {
            EditText edittext=(EditText)findViewById(R.id.editText1);

            Intent i=new Intent();
            i.setData(Uri.parse(edittext.getText().toString()));
            setResult(RESULT_OK,i);
            finish();
        }
    });
}
}
  

Файл манифеста

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

    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".IntentsActivity"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
           <activity android:name=".AnotherActivity"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.AnotherActivity" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
    </manifest>
  

Здесь main.xml файл состоит из кнопки и another.xml состоит из редактируемого текста и кнопки. Кто-нибудь может назвать мне причину, по которой приложение не работает

Комментарии:

1. Когда возникает исключение, сразу после запуска приложения или при запуске второго действия, т. Е. После нажатия кнопки

2. В вашем коде нет ничего явно неправильного. Пожалуйста, опубликуйте stacktrace здесь.

3. При отладке вашего приложения отладчик должен сообщить вам, какая строка какого класса сгенерировала исключение NullPointerException (в правом верхнем углу отладочного представления в Eclipse). С этой информацией, возможно, будет проще ответить на ваш вопрос. =)

4. Исключение, возникающее после нажатия кнопки

Ответ №1:

Кажется, я не могу найти ничего неправильного в вашем коде, я думаю: EditText edittext=(EditText)findViewById(R.id.editText1); возвращает null?