Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android中的EditText和ListView实践不起作用_Android_Android Intent_Android Listview_Android Arrayadapter - Fatal编程技术网

android中的EditText和ListView实践不起作用

android中的EditText和ListView实践不起作用,android,android-intent,android-listview,android-arrayadapter,Android,Android Intent,Android Listview,Android Arrayadapter,我制作了一个简单的android应用程序,有2个活动。在前3个编辑文本中,有2个按钮“插入”和“取消”在第二个活动中,它是一个列表视图。我想要的是,当按下Activity1的insert按钮时,在第1个活动的EditText中输入的3个值应转到第2个活动,并显示在一个简单的列表视图中…我尝试了以下代码,但它不起作用…Emulator显示“不幸的是,应用程序已停止” mainActivity.java package com.example.listdemo; import java.util.

我制作了一个简单的android应用程序,有2个活动。在前3个编辑文本中,有2个按钮“插入”和“取消”在第二个活动中,它是一个列表视图。我想要的是,当按下Activity1的insert按钮时,在第1个活动的EditText中输入的3个值应转到第2个活动,并显示在一个简单的列表视图中…我尝试了以下代码,但它不起作用…Emulator显示“不幸的是,应用程序已停止”

mainActivity.java

package com.example.listdemo;

import java.util.ArrayList;

import android.R.id;
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.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends Activity {
Button b1,b2;
EditText e1,e2,e3;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        final EditText e1=(EditText)findViewById(R.id.editText1);
        final EditText e2=(EditText)findViewById(R.id.editText2);
        final EditText e3=(EditText)findViewById(R.id.editText3);


      //  final ArrayList<String> noteList = new ArrayList<String>();
        //final ArrayAdapter<String> aa;
        b1=(Button)findViewById(R.id.button1);
        b2=(Button)findViewById(R.id.button2);
    b1.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            String s1 = e1.getText().toString();
            String s2 = e1.getText().toString();
            String s3 = e1.getText().toString();

            Bundle b=new Bundle();
            b.putStringArray("key", new String[]{s1, s2,s3});
            Intent i=new Intent(getApplicationContext(), SecondActivity.class);
            i.putExtras(b);
            startActivity(i);

        }
    });
    b2.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
        Intent i = new Intent(MainActivity.this,SecondActivity.class);
        startActivity(i);
        }
    });
    }

}
   package com.example.listdemo;

import android.os.Bundle;
import android.app.Activity;
import android.app.ListActivity;
import android.content.Intent;
import android.sax.StartElementListener;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
import android.widget.Toast;

public class SecondActivity extends Activity {
    ListView ls;
    Button bt;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_second);

              ls=(ListView)findViewById(R.id.list1);

              Bundle b=this.getIntent().getExtras();
              String[] array=b.getStringArray("key");

              ls.setAdapter(new ArrayAdapter(this, android.R.layout.simple_list_item_1,array));



            bt.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View arg0) {
                    // TODO Auto-generated method stub
                Intent i =new Intent(SecondActivity.this,MainActivity.class);
                startActivity(i);
                }
            });
        }

    }
seconActivity.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <ListView
        android:id="@+id/list1"
        android:layout_width="match_parent"
        android:layout_height="306dp" >
    </ListView>

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Back"
        android:layout_marginTop="20dp"
        android:layout_gravity="center" />

</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.listdemo"
    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.listdemo.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>
        <activity
            android:name="com.example.listdemo.SecondActivity"
            android:label="@string/title_activity_second" >
        </activity>
    </application>
</manifest>
manifest.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <ListView
        android:id="@+id/list1"
        android:layout_width="match_parent"
        android:layout_height="306dp" >
    </ListView>

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Back"
        android:layout_marginTop="20dp"
        android:layout_gravity="center" />

</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.listdemo"
    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.listdemo.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>
        <activity
            android:name="com.example.listdemo.SecondActivity"
            android:label="@string/title_activity_second" >
        </activity>
    </application>
</manifest>

编辑:

在您的Xml中,将listview的id更改为
android:id=“@android:id/list”
,然后在您的类中获得如下内容

lv=(ListView)findViewById(android.R.id.list);
bt=(Button)findViewById(R.id.yourButtonid);
使用ListActivity时会发生这种情况,因为ListActivity应该具有id为android.R.id.list的listview,请检查此处以供参考


您的按钮
button bt
null
,因为您尚未在
onCreate()中获取其引用

试着像这样扣上你的钮扣

lv=(ListView)findViewById(android.R.id.list);
bt=(Button)findViewById(R.id.yourButtonid);

我想这是您的问题,请发布logcat跟踪,以便我根据它发布答案

您的第二个活动是extends ListActivity,因此您不需要设置ContentView,并且ListView可以作为引用来使用
getListView()

您尚未指定按钮id。您刚刚声明了按钮bt。您必须获得second.xml中指定的按钮引用

在错误中,它显示nullpointer异常位于第33行。 这是您为按钮单击编写代码的地方。 编辑您的代码并参考按钮bt,如下所示

按钮bt=(按钮)findViewById(R.id.Button id)

在第一个活动中,也可以这样编辑

        String s1 = e1.getText().toString();
        String s2 = e2.getText().toString();
        String s3 = e3.getText().toString();

我用按钮引用尝试了你的代码。它工作正常。

请发布你的日志跟踪我已经放置了日志跟踪…sirI已经按照你的建议制作了一些图标…但仍然不工作。。。!sri.请帮帮我…这是我对工作的实际测试。。!它可以救我的lyf@jigar把你的logcat跟踪贴在这里…这样我可以帮你。。编辑您的问题并在日志中标出红线window@jigar不,请检查我的答案…一次。。我在其中提供了Edit@jigar您是否已将listview的id属性设置为
android:id=“@android:id/list”
activity\u second.xml
@jigar您是否已在
AndroidManifest.xml
中注册了
SecondActivity
getListView()
也将不起作用,因为xml中的listview应该有id
android=“@android:id/list”
兄弟..我已经删除了“listactivity”并放置了“activity”仍然不起作用…:(你能在这里放置新的logacat吗?@jigar将listview的android:id更改为@+id/listView1,与你试图获取的id相同(listview)findViewById(R.id.listView1);是的……先生……我已经编辑了……但问题仍然存在……请帮助我,先生……这是我的练习xam for job,……它可以救我……:(@jigar:只需在bt.setOnClickListener(new OnClickListener()之前添加按钮bt=(按钮)findViewById(R.id.button1){。这会很好的。我已经在我的答案中发布了。检查一下,在发布答案之前询问一下他