2012-06-29 4 views
0

Я делаю простое приложение. и это мое первое приложение тоже ...Как перейти к операции, нажав Столбец?

У этого есть деятельность с меню, и я сделал каждый пункт меню в Табличной Строке. Каждая строка таблицы содержит кнопку «Изображение» и текстовое описание. Я хочу перейти к другому действию, когда мы нажимаем на каждую строку таблицы. Как это сделать??

И можно ли использовать один файл класса для отображения нескольких файлов макета (т. Е. Для содержимого каждого меню)?

Или

Есть ли другой способ, чем TableRow для создания меню, как это и использовать его, чтобы перейти к другой деятельности?

ответ

1

Прежде всего, давайте посмотрим, как перейти к другому действию, нажав на строку таблицы. В строке таблицы вашей собственности XML файла дать следующий синтаксис:

android:onClick="onClick" 

Затем в деятельности только после того, как по созданию метода поставить эту строку

public void onClick(View v){ 

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

} 

Делая это, когда вы нажимаете на строку таблицы и будет иметь перенаправлено на другое название деятельности newActivityname.

Во-вторых, да, вы можете установить различные файлы макета для того же acitivty только на основе некоторого состояния. Например, если мы хотим, чтобы поместить файлы макет в соответствии с условием целочисленного значения, чем сделать, как этот

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); 
    } 

Как это основанное на некоторых условиях вы можете установить раскладку.

Для вашего третьего запроса, пожалуйста, будьте более конкретными, чтобы мы могли ответить вам.

+0

тат был просто красивый код ... – Agnel

+0

хмм Добро пожаловать приятель – Aamirkhan

+0

Есть в любом случае, чтобы узнать, какие строки таблицы была нажата, когда мы г в следующей деятельности? Я хочу использовать один и тот же файл Java, чтобы показать разный макет в соответствии с таблицей Row нажал ... – Agnel

0

В вашем xml вы можете указать id для вашего TableRow, а затем onClick вызвать следующую операцию, например, код ниже, а в следующем действии вы можете обработать метод 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));    
    } 
}); 
0

попробовать как:

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); 
     } 
    }; 
} 
Смежные вопросы