如何在android中实现这个导航菜单

时间:2015-10-15 12:17:13

标签: android android-layout

我需要实现这样的导航菜单:

Navigation menu

我不想使用导航抽屉,因为我已经将它用于其他目的。

让我解释一下情况:

我有一个导航抽屉,显示带有一些选项的列表视图。当用户点击某个选项时,导航抽屉会消失,并且可能内容视图中应显示一些带有外观和按钮的按钮。感觉如上图所示。

按下按钮时,新视图(对应于按钮选择)应从右侧滑入。

我怎样才能做到这一点?我没有找到一个很好的资源。

由于 海梅

1 个答案:

答案 0 :(得分:0)

我最终使用ListView完成了它。

这是代码,我可以保证它不会混淆,事实上,这是在每个Android应用程序中完成的:

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);
        }
    });