2010-10-16 1 views
0

У меня есть вкладки в TabActivity, который заполняется списком из метода в другом Управлении. когда я нажимаю на listview на вкладке, я пытаюсь удалить элемент в списке из onContextItemSelected и дать вкладке в callback callback тот же самый метод в Activity, который заполняет listview. пожалуйста, кто-нибудь знает, как я могу определить вкладку, где действие было выполнено из Activity, который имеет метод listview?Как определить вкладки Tabhost tabs из другого вида деятельности

Существует, как известно, метод setTag() на вкладках в другом, чтобы идентифицировать их. Я пробовал это, который работает, если я в классе TabActivity, но если я нахожусь в другой Activity, я хочу, чтобы он вызывал fillAllData(). но я получаю предупреждение от затмения, что строка - это мертвый код и его вызов fillShopData(). Любые идеи о том, как обойти это? .. Надеюсь, я поняла. Благодарю.

/* code in activity class after delete is pressed in onContextItemSelected*/ 
    if(Categories.SHOP_TAB_TAG == 1) { // tab in categories TabActivity identified as int 
     fillShopData(); // fill this data back in tab 
     }else { 
     fillAllData(); // Dead Code from Activity 
} 
+0

Возможно ли использовать ожидающее намерение вернуться к классу tabActivity, чтобы он снова заполнил список на вкладках? .. в основном, что я пытаюсь сделать, удалить элемент в списке основных и пусть вкладка отражает эти изменения .. спасибо – irobotxxx

ответ

0

Вы можете иметь статическую переменную в классе констант, который будет держать след от выбранной вкладки, которые вы будете изменять в OnTabChangedListener как:

@Override 
public void onTabChanged(String tabId) { 
    if (tabId.equalsIgnoreCase("Assigned")) { 
     Constants .LIST_ACTIVITY = 0; 
    } else if (tabId.equalsIgnoreCase("Accepted")){ 
     Constants .LIST_ACTIVITY = 1; 
    }else if (tabId.equalsIgnoreCase("Rejected")){ 
     Constants .LIST_ACTIVITY = 2; 
    }else if (tabId.equalsIgnoreCase("Completed")){ 
     Constants .LIST_ACTIVITY = 3; 
    } 
} 

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

 Смежные вопросы

  • Нет связанных вопросов^_^