android - 将项目设置到 ListView 的页脚

标签 android listview android-arrayadapter navigation-drawer

我有一个抽屉导航,它由字符串填充,通过使用它们的位置,我正在处理要启动的 Activity ,我只想listview最后一项应该位于listview<的页脚

我使用了 setFooter 属性,但它不起作用。

有什么方法可以做到吗?

这是代码:

class MyAdapter extends BaseAdapter {
    private Context context;
    String[] navlist;
    int[] images = { R.drawable.job, R.drawable.career, R.drawable.project,
            R.drawable.facebook, R.drawable.games, R.drawable.mail, R.drawable.rate };

    public MyAdapter(Context context) {
        this.context = context;
        navlist = context.getResources().getStringArray(R.array.navdra);
    }

    @Override
    public int getCount() {
        // TODO Auto-generated method stub
        return navlist.length;
    }

    @Override
    public Object getItem(int position) {
        // TODO Auto-generated method stub
        return navlist[position];
    }

    @Override
    public long getItemId(int position) {
        // TODO Auto-generated method stub
        return position;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View row = null;
        if (convertView == null) {
            LayoutInflater inflater = (LayoutInflater) context
                    .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            row = inflater.inflate(R.layout.customrow, parent, false);
        }

        else {
            row = convertView;
        }
        TextView titleTextView = (TextView) row.findViewById(R.id.textView11);
        ImageView titleImageView = (ImageView) row
                .findViewById(R.id.imageView1);
        titleTextView.setText(navlist[position]);
        titleImageView.setImageResource(images[position]);

        return row;
    }

}

ListView和ArrayAdapter代码:

listView = (ListView) findViewById(R.id.drawerlist);
        myAdapter = new MyAdapter(this);

        listView.setAdapter(myAdapter);
        listView.setOnItemClickListener(this);
        drawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout);
        drawerListner = new ActionBarDrawerToggle(this, drawerLayout,
                R.drawable.ic_drawer, R.string.dopen, R.string.dclose);

        drawerLayout.setDrawerListener(drawerListner);

最佳答案

请参阅将页脚设置为 ListView 的示例代码

mListview = (ListView) mContentView.findViewById(R.id.myListView);

// Inflating header and footer view to ListView
ViewGroup header = (ViewGroup) inflater.inflate(R.layout.header_item, mListview,false);
ViewGroup footer = (ViewGroup) inflater.inflate(R.layout.footer_item,mListview,false);

// Adding view to mlist header and footer
mListview.addHeaderView(header, null, false);
mListview.addFooterView(footer, null, false);

// Initializing the adapter
ListAdapter adapter = new ListAdapter(getNGAActivity(), myData);

// Setting the listview adapter
mListview.setAdapter(adapter);

我希望代码注释是不言自明的

关于android - 将项目设置到 ListView 的页脚,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28475131/

相关文章:

Android蓝牙崩溃应用程序

android - 使用 arraylist<string> 为 android 中的自动完成 TextView 设置适配器

android - 仅用于测试依赖项的 Gradle 模块输出配置

java - 创建 onItemClickListener 时出现问题

java - Set<元素>是什么意思?

android - getView 中的自定义 ArrayAdapter setBackground

java - 来自 App 的 Android Image Viewer

android - 在 ImageView Android 中获取图像名称

flutter - 在 Flutter 中选择时更改 ListTile 的背景颜色

android - 嵌入 WebKit 是在 Android 应用程序中显示超链接对象和图像列表的正确解决方案吗?