我的导航栏中有“登录”选项。登录后我希望它显示Logout。导航抽屉物品也可以向左拉伸。登录完成后,我可以重新加载/刷新/重新初始化导航抽屉吗?
答案 0 :(得分:1)
您可以为导航区域定义布局,如下所示:
<android.support.v4.widget.DrawerLayout>
<RelativeLayout>
....
<ListView
...
android:id="@+id/navigation_list"/>
</ListView>
</RelativeLayout>
</android.support.v4.widget.DrawerLayout>
在您的代码中,您现在可以使用Adapter
并根据需要填写列表内容,更新适用于notifyDataSetChanged
。
对于List的每个条目,您可以定义特定的布局(带或不带按钮等)
答案 1 :(得分:1)
成功登录后,您可以从适配器获取视图。
获取该imageview或任何其他视图更改图像
ImageView imageView=(ImageView)getViewByPosition(pos,listview);
imageView.setImageResource(R.drawable.new_image);
public View getViewByPosition(int pos, ListView listView) {
final int firstListItemPosition = listView.getFirstVisiblePosition();
final int lastListItemPosition = firstListItemPosition + listView.getChildCount() - 1;
if (pos < firstListItemPosition || pos > lastListItemPosition ) {
return listView.getAdapter().getView(pos, null, listView);
} else {
final int childIndex = pos - firstListItemPosition;
return listView.getChildAt(childIndex);
}
}
答案 2 :(得分:1)
您可以使用两种方法将数据加载到导航抽屉列表视图中,一个用于登录,一个用于注销,每当您创建活动时,请检查您的会话并根据该加载列表视图。同样,当您登录时,您可以从另一个活动调用注销方法并刷新naviagtion抽屉。