I created tab dynamically in onClick of listview. Whenever I click the same list item the duplicate tab is opening for the same list item.How can I prevent the duplicate tab opening in onClick of list item
Here is my Code
protected void onListItemClick(ListView l, View v, final int position, long id)
{
super.onListItemClick(l, v, position, id);
TabHost tabHost = Tabviewactivity.self.getTabHost();
FriendInfo friend = friendAdapter.getItem(position);
Intent i = new Intent();
i.setClass(this, Messaging.class);
i.putExtra(FriendInfo.USERNAME, friend.userName);
String friend_name = friend.userName;
tabHost.addTab(tabHost.newTabSpec(friend_name + Integer.toString(z)).
setIndicator(friend_name).setContent(i));
tabHost.setCurrentTab(z);
z++;
}
Thanks
TabHost tabHost = AllFriendList.self.getTabHost();
int position = tabHost.getCurrentTab();
Log.d("Position",Integer.toString(position));
Log.d("Z val in delete()",Integer.toString(z));
if(position >0)
{
tabHost.getCurrentTabView().setVisibility(View.GONE);
tabHost.setCurrentTab(position+1);
z-=1;
if(z<0)
z=0;
}
else if(position == 0)
{
tabHost.getCurrentTabView().setVisibility(View.GONE);
tabHost.setCurrentTab(position+1);
z=0;
}
else if(position == z)
{
tabHost.getCurrentTabView().setVisibility(View.GONE);
tabHost.setCurrentTab(z-1);
Log.d("Z value in final","lol");
Log.d("Pos",Integer.toString(position));
Log.d("z pos",Integer.toString(z));
}
TabActivity parent = (TabActivity) getParent();
TabHost tabhost = parent.getTabHost();
tabhost.setCurrentTab(z+1);
for(int i=0;i<tabList1.size();i++)
{
if(tabList1.contains(frnd_position1))
{
tabList1.remove(i);
}
}
Store the clicked position in an ArrayList
after creating the Tab and in the click check if the selected position is already present in the ArrayList or not..if present do not add a tab else add a new tab..
ArrayList<Integer> tabList = new ArrayList<Integer>();
protected void onListItemClick(ListView l, View v, final int position, long id) {
super.onListItemClick(l, v, position, id);
if(!tabList.contains(position)) {
TabHost tabHost = Tabviewactivity.self.getTabHost();
FriendInfo friend = friendAdapter.getItem(position);
Intent i = new Intent();
i.setClass(this, Messaging.class);
i.putExtra(FriendInfo.USERNAME, friend.userName);
String friend_name = friend.userName;
tabHost.addTab(tabHost.newTabSpec(friend_name + Integer.toString(z)).setIndicator(friend_name).setContent(i));
tabHost.setCurrentTab(z);
z++;
tabList.add(position);
}
}