我是Android的新手,只对HTML和Basic有所了解,经过很多时间和无奈之后,我终于设法使listview可点击,我根据这样的位置做出了意图。

 if (position == 3) {
                Intent intent = new Intent(this, Bradford.class);
                startActivity(intent);
 }


问题是我在单独的选项卡中有4个列表,并且这些列表中有92个选项,因此我必须做92个intent(非常混乱),所以第一个问题是,是否有更好的方法可以在使用较少代码的情况下实现intent确定点击的位置

另外我总共有92个类,它们将或多或少地做同样的事情,我要做的第一件事是将每个列表类别放在一个文件夹中,这是否会更改路径(例如com.ff.org.firstlist。 Bradford.class)我需要在代码中还是在清单中执行此操作?

最后,我有92个类,它们将在应用程序中打开url并使用gps和一些打印和图像功能,将我的所有信息都保存在一个文件中,而不是在速度和可靠性方面更好,或者我应该保留这92个类。

最佳答案

您可以使用ActivityGroup对活动进行分组。因此,将选项卡内容设置为ActivityGroup而不是常规的Activity。

tabHost.addTab(tabHost.newTabSpec("Tab")
                .setIndicator("Tab")
                .setContent(new Intent(this, YourActivityGROUP.class)
                 .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)));


然后,您可以从该ActivityGroup中启动另一个Activity。

class YourActivityGROUP extends ActivityGroup{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);

          //you van get the local activitymanager to start the new activity

          View view = getLocalActivityManager()
                                    .startActivity("ReferenceName", new
          Intent(this,YourActivity.class)
                                    .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP))
                                    .getDecorView();
           this.setContentView(view);

       }
    }


以下是一些示例:android-tabactivity-nested-activitiesexperience-multiple-android-activities

08-18 08:39