我可以使用一个布局和2个活动吗?

时间:2012-11-08 13:49:10

标签: android listview layout android-activity

我可以使用一个包含2个活动的布局吗? 我有一个名为“download.java”的活动和一个名为“upload.java”的活动和一个名为“main_site.xml”的布局。

“download.java”是MainActivity 它显示2个按钮和一个空列表视图 - > “下载”,“上传”,“lv”

当我点击上传时,第二个活动“upload”将启动,第二次启动“main_site.xml”,列表视图将填充数据。

现在我有2次“main_site.xml”一个高于另一个...... 我怎样才能填写listiview而不打开“新”布局?

在download.java中添加OnCreate

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.main_site);

    if (android.os.Build.VERSION.SDK_INT > 9) {
        StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
        StrictMode.setThreadPolicy(policy);
      }


    Button download = (Button)findViewById(R.id.cmd_download);
    download.setOnClickListener(new View.OnClickListener(){

        public void onClick(View v){

            connectFTP("176.28.25.46");
            listItems(); 

            } 
    });

    Button upload = (Button)findViewById(R.id.cmd_upload);
    upload.setOnClickListener(new View.OnClickListener(){

        public void onClick(View v){            
            Intent myIntent = new Intent(MainSite.this, upload.class);
            MainSite.this.startActivity(myIntent);
            } 
    });
}

upload.java中的OnCreate

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main_site);
    myPath = (TextView)findViewById(R.id.path);

    root = Environment.getExternalStorageDirectory().getPath();

    getDir(root);
}

4 个答案:

答案 0 :(得分:2)

您应该只使用相同活动中的代码更新ListView的内容。

答案 1 :(得分:1)

,你可以做到。没有理由你不能这样做。如果您的活动设计布局在这些活动中相同(或者与应用程序中的活动一样多),则可以在不同的活动中使用相同的layout.xml文件。

答案 2 :(得分:1)

使用静态数组列表将数据从上传活动传递到下载活动,只需完成上传活动,并根据条件使用下载活动onResume()中的静态arraylist

答案 3 :(得分:0)

是的,您可以,您只需使用<include>作为标记,然后再次使用@+id/YOUR_NAME重复使用相同的布局。

相关问题