Java 如何通过单击表行转到“活动”?

Java 如何通过单击表行转到“活动”?,java,android,Java,Android,我正在制作一个简单的应用程序。这也是我的第一个应用程序 它有一个带有菜单的活动,我在一个表行中创建了每个菜单选项。每个表行包含一个图像按钮和一个文本描述。我想在单击每个表行时转到另一个活动。我该怎么做 是否可以使用单个类文件来显示多个布局文件(即每个菜单的内容) 或 除了tableRow,还有其他方法可以创建这样的菜单并使用它转到其他活动吗?在xml中,您可以为tableRow指定id,然后单击调用下一个活动,如下面的代码,在下一个活动中,您可以处理setcontentview()方法,使用简单

我正在制作一个简单的应用程序。这也是我的第一个应用程序

它有一个带有菜单的活动,我在一个表行中创建了每个菜单选项。每个表行包含一个图像按钮和一个文本描述。我想在单击每个表行时转到另一个活动。我该怎么做

是否可以使用单个类文件来显示多个布局文件(即每个菜单的内容)


除了tableRow,还有其他方法可以创建这样的菜单并使用它转到其他活动吗?

在xml中,您可以为tableRow指定id,然后单击调用下一个活动,如下面的代码,在下一个活动中,您可以处理setcontentview()方法,使用简单的if-else逻辑和从前面的意图传递的值(例如第一行的rowId=1等),并设置所需的布局,这可能会有所帮助

TableRow tableRow=(TableRow)findViewById(R.id.LayoutFirstRow);
tableRow.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        startActivity(new Intent(presentActivity.this, destinationActivity.class));             
    }
});

首先,让我们看看如何通过单击表行转到另一个活动。在XML文件属性的表行中,给出以下语法:

android:onClick="onClick"
然后在您的活动中,在create方法上放置这一行

public void onClick(View v){

 Intent intent=new Intent(v.getContext(),newActivityname.class);
 startActivityForResult(intent,0);

}
当您单击表时执行此操作,u行将重定向到另一个活动名称
newActivityname

第二,是的,您可以根据某些条件为相同的活动设置不同的布局文件。例如,如果我们想按照整数值条件放置布局文件,那么我们可以这样做

int flag=0;

if(flag==0){
  setContentView(R.layout.xml1);
}
if(flag==0){
      setContentView(R.layout.xml2);
    }
if(flag==1){
      setContentView(R.layout.xml3);
    }
if(flag==3){
      setContentView(R.layout.xml4);
    }
这样,根据某些条件,您可以设置布局

对于您的第三个问题,请更具体一些,以便我们能够回答您。

尝试:

TableRow tablerow = new TableRow(this);
tablerow.setId(2000+i); //set id here
tablerow.setOnClickListener(getOnClickTableRow(tablerow));
//your code...

View.OnClickListener getOnClickTableRow(final TableRow tablerow)  {
    return new View.OnClickListener() {
        public void onClick(View v) {

            //START ACITIVYT HERE
             Intent intent=new Intent(CURRENT_ACTIVITY.this,Activityname.class);
             startActivity(intent);
        }
    };
}

我们在下一个活动中单击了哪一个表行,您知道吗?我想使用相同的Java文件根据单击的表行显示不同的布局…这很简单,因为根据表行id的条件,您可以通过编程设置您的布局