Library Used:
- https://github.com/SimonVT/android-menudrawer
- https://github.com/JakeWharton/ActionBarSherlock
- https://github.com/JakeWharton/Android-ViewPagerIndicator
Question:
I have been trying to implement highlighting on the menudrawer similar to YouTube/Beautiful Widget app, but i have no clue to how is should approach the problem.
below i am giving a sample to my aprproche which i am not sure, if its the correct way to implement something like this:
This is a Menu drawer Adaptervew.click lisner i created:
private AdapterView.OnItemClickListener mItemClickListener = new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
mPreviousView=mActiveView;
mActiveView=view;
mActivePosition = position;
// mDrawer.setActiveView(view, position);
TextView txtview=(TextView)mActiveView;
txtview.setBackgroundResource( R.drawable.abs__cab_background_top_holo_dark);
// mDrawer.closeMenu();
}
};
So basically what i am trying to do here is to use a .9 image on the current selected view!
What i want to know is is there a more systematic or better approach to do the same!
What i want to achive Screen Shots below::
You can give it a try:
There would be several ways to tackle this. My favorite approach would be to put your ListView item TextView inside a FrameLayout. This FrameLayout can then have a foreground drawable housing your indicator. You can show/hide this indicator either programmatically or using a selector.
This was my solution to highlight the current menu item:
1) Expose the last select drawerPosition of the NavDrawer activity :
And then Step 2, in the adapter class, reference that value: