相关疑难解决方法(0)

如何在ActionBarSherlock中实现多选和Contextual ActionMode?

我应该如何在AdapterView上使用ActionBarSherlock实现多选,因为它不提供MultiChoiceModeListener?

这就是它的样子

上下文行动模式

你怎么能这样做?

android actionbarsherlock android-actionbar contextual-action-bar

27
推荐指数
1
解决办法
2万
查看次数

Gmail风格列表视图

我想创建一个与Gmail Android应用程序功能相似的列表视图.我的意思是你可以通过单击左侧的图像来选择行,或者通过单击行上的任何其他位置来查看电子邮件.我可以靠近,但它不是那里.

我的自定义行包含左侧的ImageView和右侧的一些TextView.这是我的适配器上的getView的要点.

    @Override
    public View getView(final int position, View convertView, ViewGroup parent) {
        View row = super.getView(position, convertView, parent);

        imageView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                getListView().setItemChecked(position, !getListView().isItemChecked(position));
            }
        });

        row.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(getActivity(), "" + position, Toast.LENGTH_SHORT).show();
            }
        });
     }
Run Code Online (Sandbox Code Playgroud)

这非常接近!缺少的是突出显示行单击侦听器上的行.

android listview android-listview

5
推荐指数
1
解决办法
1万
查看次数

使用Android操作栏分享意图

我正在使用操作栏上的菜单项,我想通过单击共享图标来共享我的应用程序.当我单击共享图标时,它不起作用.另外,我想"install this app"在共享时添加文字说明.

这是我的代码:

private ShareActionProvider mShareActionProvider;

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.mainpage, menu);
    MenuItem item = menu.findItem(R.id.menu_item_share);
    mShareActionProvider = (ShareActionProvider) item.getActionProvider();

    return true;
}

private void setShareIntent(Intent shareIntent) {
    if (mShareActionProvider != null) {
        mShareActionProvider.setShareIntent(shareIntent);
    }
}
Run Code Online (Sandbox Code Playgroud)

Mainpage.xml菜单:

<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@+id/menu_item_share"
    android:showAsAction="ifRoom"
    android:title="Share"
    android:icon="@drawable/ic_store"
    android:actionProviderClass="android.widget.ShareActionProvider" />
</menu>
Run Code Online (Sandbox Code Playgroud)

android android-menu android-optionsmenu

2
推荐指数
1
解决办法
1万
查看次数

使用浮动上下文菜单从列表视图中删除项目

已经能够使用onItemLongClick方法删除listview项,但我宁愿使用浮动上下文菜单来执行此操作.

下面是我目前用于浮动上下文菜单的代码.我按照文档帮助我进行设置,然后尝试搜索类似的示例,我正在做什么但找不到合适的东西.

    @Override
    public void onCreateContextMenu(ContextMenu menu, View v,
                                    ContextMenu.ContextMenuInfo menuInfo) {
        super.onCreateContextMenu(menu, v, menuInfo);
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.payments_context, menu);
    }

    @Override
    public boolean onContextItemSelected(MenuItem item) {
        AdapterView.AdapterContextMenuInfo info = (AdapterView.AdapterContextMenuInfo) item.getMenuInfo();
        switch (item.getItemId()) {
            case R.id.edit:

                return true;
            case R.id.delete:

                return true;
            default:
                return super.onContextItemSelected(item);
        }
    }
Run Code Online (Sandbox Code Playgroud)

在我决定切换到浮动上下文菜单之前,这是我必须删除listview中的项目的代码

public boolean onItemLongClick (AdapterView<?> parent, View view, int position, long id)
        {
            String temp = paymentTitle.get(position).toString();
            paymentTitle.remove(position);
            paymentDate.remove(position);
            reminderDate.remove(position);
            reminderTime.remove(position);
            paymentVal.remove(position);

            mDatabase = new MOSDatabase(this);

            SQLiteDatabase readableDB = mDatabase.getWritableDatabase();
            readableDB.delete("PaymentTable", …
Run Code Online (Sandbox Code Playgroud)

android

1
推荐指数
1
解决办法
4470
查看次数