2015-10-15 4 views
0

мне нужно достигнуть меню навигации, таких как это:Как добиться этого меню навигации в андроид

Navigation menu

Я не хочу использовать панель навигации, так как я уже использую его для других целей.

Позвольте мне объяснить немного ситуацию:

У меня есть панель навигации, которая показывает ListView с некоторыми опциями. Когда пользователь нажимает на эту опцию, навигационный ящик исчезает, и в режиме содержимого контент должен показывать некоторые кнопки с изображением & чувствовать себя как изображение выше.

При нажатии кнопки открывается новое изображение (соответствующее выбору кнопки) справа.

Как я могу это достичь? Я не нашел для этого хорошего ресурса.

Благодаря Jaime

+0

http://www.androidhive.info/2013/11/ android-slide-menu-using-navigation-drawer/ –

+0

http://sunil-android.blogspot.in/2013/09/slide-menu-navigation-drawer-in-android.html –

+0

https://github.com/johnkil/SideNavigation –

ответ

0

Я сделал это, наконец, с помощью ListView.

Это код, и я могу заверить, что это не сбивает с толку, а на самом деле, это делается в каждом андроида приложения:

public void DrawAreas() { 
    final ListView areaView = (ListView) _activity.findViewById(R.id.area_list); 

    ArrayAdapter<TdcArea> areas = new ArrayAdapter<TdcArea>(_activity.getApplicationContext(), 
      android.R.layout.simple_list_item_1, 
      _system.getAreas()) { 
     @Override 
     public View getView(int position, View convertView, ViewGroup parent) { 
      View view = super.getView(position, convertView, parent); 
      TextView text = (TextView) view.findViewById(android.R.id.text1); 
      text.setTextColor(Color.BLACK); 
      Drawable icon = ContextCompat.getDrawable(_activity.getApplicationContext(), R.drawable.chevron_red); 
      text.setCompoundDrawablesWithIntrinsicBounds(null, null, icon, null); 
      return view; 
     } 
    }; 
    areaView.setAdapter(areas); 
    areaView.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     @Override 
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
      TdcArea area = (TdcArea) areaView.getItemAtPosition(position); 
      Intent intent = new Intent(_activity.getApplicationContext(), FormActivity.class); 
      intent.putExtra("AREA", area); 
      _activity.startActivity(intent); 
     } 
    });