显示列表传递到列表视图并将所选项目的ID返回到上一个活动

时间:2011-08-01 08:27:24

标签: android listview android-activity

我是Android开发的新手,我想制作一个简单的笔记应用程序作为学习练习。

我有一个带有edittext和菜单的活动。当单击菜单时,我想显示第二个活动(或类似的),让用户选择一个注释,然后返回到要编辑的编辑文本。

到目前为止,我能找到的所有教程都使用硬编码列表或资源文件中的列表,我必须更加动态。

我非常感谢所有帮助,因为我想要编码!

干杯,

威尔

3 个答案:

答案 0 :(得分:3)

我不会给你完整的代码,因为你在学习,你应该自己去探索,但我想给你一些提示。

从您的第一个活动开始,您应该使用启动活动的startActivityForResult开始第二项活动,并且启动活动会将一些结果返回到您的第一个活动。

您可以使用的另一件事是PutExtra,它可用于将一些数据从一个活动传递到另一个活动。

答案 1 :(得分:0)

我会给你一个虚拟的方式

创建课程theApp

public class theApp extends Application {
private String Note;

public String getNote(){
    return Note;
    }
public void setNote(String Note){
    this.Note = Note;
    }
}

在清单中(更改 android:name =“theApp”

 <application android:icon="@drawable/icon" android:label="@string/app_name" android:name="theApp">

在第一个活动中(返回第二个活动):

            Intent myIntent = new Intent(FIRSTACTIVITY.this,CALLED_ACTIVITY.class);
            Bundle bundle = new Bundle();
            bundle.putString("key1", whatever);//if you want to send some string
            bundle.putString("key2", whatever);//you can also send integers and others using putInt and others
            myIntent.putExtras(bundle);
            startActivityForResult(myIntent, 0);

在第二个活动中(返回第一个活动):

            ((theApp)getApplicationContext()).setNote(a_STRING);
            setResult(ANY_INTEGER);
            finish();

最后在第一个活动中

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    // use ((theApp)getApplicationContext()).getNote();
    // if you want you can use ANY_INTEGER (which was set in the second activity using setResult
    // Access ANY_INTEGER using resultCode
}

答案 2 :(得分:0)

我认为JavaNut13更关注他列表中的观点,而不是活动。

@ JavaNut13,看看http://thinkandroid.wordpress.com/2010/01/13/custom-baseadapters/