相关疑难解决方法(0)

如何在ActionBar的"溢出"菜单中显示图标

我知道使用本机API是不可能的.是否有解决方法来实现这种视图?

android android-menu actionbarsherlock android-actionbar

64
推荐指数
8
解决办法
6万
查看次数

是否可以在PopupMenu中显示图标?

我非常喜欢我们在3.0中获得的新PopupMenu,但我无法在其中显示菜单项旁边的任何图标.我正在从下面的.xml中填充菜单:

<item android:id="@+id/menu_delete_product"
    android:icon="@drawable/sym_action_add"
    android:title="delete"
    android:showAsAction="ifRoom|withText" />

<item android:id="@+id/menu_modify_product"
    android:icon="@drawable/sym_action_add"
    android:title="modify"
    android:showAsAction="ifRoom|withText" />

<item android:id="@+id/menu_product_details"
    android:icon="@drawable/sym_action_add"
    android:title="details"
    android:showAsAction="ifRoom|withText" />
Run Code Online (Sandbox Code Playgroud)

使用此代码:

image.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        PopupMenu pop = new PopupMenu(getActivity(), v);
        pop.getMenuInflater().inflate(R.menu.shelves_details_menu, pop.getMenu());
        pop.show();
    }
});
Run Code Online (Sandbox Code Playgroud)

我不能让图标出现,我错过了什么?

android android-3.0-honeycomb

48
推荐指数
7
解决办法
3万
查看次数

如何在Android> 4.0和硬件按钮的设备上设置动作溢出菜单中的文本样式?

我想为我的溢出菜单自定义背景和文字颜色.没有硬件菜单按钮的设备可以正常工作,但我无法使用硬件菜单按钮设置设备样式.查看截图:

来自Galaxy Nexus的Screnshot Galaxy S3的屏幕截图

我正在使用这些样式:

<style name="Theme.settleup" parent="@style/Theme.Sherlock.Light.DarkActionBar">
    <item name="android:popupMenuStyle">@style/settleup_PopupMenu</item> 
    <item name="android:actionMenuTextColor">@android:color/white</item>
</style>
<style name="settleup_PopupMenu" parent="@style/Widget.Sherlock.ListPopupWindow">
    <item name="android:popupBackground">@drawable/menu_dropdown_panel_settleup</item>
</style>
Run Code Online (Sandbox Code Playgroud)

android menu android-actionbar drop-down-menu

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

如何更改背景颜色弹出菜单android

我从查询数据库生成菜单的每个选项.这是我的代码.

final PopupMenu popupMenu = new PopupMenu(getBaseContext(), v); 
SQLiteDatabase db = AdapterDb.getReadableDatabase(); 
Cursor cursor = db.rawQuery(sql, null);
int ctritem = 0;
if (cursor.moveToFirst()) {
    popupMenu.getMenu().add(Menu.NONE, ctritem, Menu.NONE, "ALL ITEMS"); 
    do {
        ctritem++;   
        popupMenu.getMenu().add(Menu.NONE, ctritem, Menu.NONE, cursor.getString(0)); 
    } while (cursor.moveToNext());
}
Run Code Online (Sandbox Code Playgroud)

一切都还可以,但问题是如何改变选项菜单的颜色或弹出菜单的背景颜色(从黑色到白色),是否可能?谢谢

android menu colors popup

27
推荐指数
4
解决办法
7万
查看次数

android弹出菜单文字颜色(AppCompat)

我需要更改popuo菜单的文本颜色,但我找不到任何方法可以做到这一点,我可以更改popmenu的背景而不是文本,我以这种方式编辑style.xml:

<style name="AppBaseTheme" parent="Theme.AppCompat.Light">
    <!-- API 14 theme customizations can go here. -->

    <item name="popupMenuStyle">@style/MyPopupMenu</item>
    <item name="android:textAppearanceLargePopupMenu">@style/myPopupMenuTextAppearanceLarge</item>
    <item name="android:textAppearanceSmallPopupMenu">@style/myPopupMenuTextAppearanceSmall</item>
</style>

<style name="MyPopupMenu" parent="@style/Widget.AppCompat.PopupMenu">
    <item name="android:popupBackground">#0F213F</item>
</style>

<style name="myPopupMenuTextAppearanceSmall" parent="@style/TextAppearance.AppCompat.Base.Widget.PopupMenu.Small">
    <item name="android:textColor">#ffffff</item>
</style>

<style name="myPopupMenuTextAppearanceLarge" parent="@style/TextAppearance.AppCompat.Base.Widget.PopupMenu.Large">
    <item name="android:textColor">#ffffff</item>
</style>
Run Code Online (Sandbox Code Playgroud)

哪里出错了?

android colors popupmenu

25
推荐指数
3
解决办法
3万
查看次数

在Android中更改背景popupMenu

我试图改变popupmenu的背景,但我的实现不起作用.

这是我的代码:

<style name="MyHoloLight" parent="android:Theme.Holo.Light">
    <item name="android:popupMenuStyle">@style/popupMenuStyle</item>
</style>
<style name="popupMenuStyle" parent="@android:style/Widget.PopupMenu">
    <item name="android:popupBackground">@color/bgPopumMenu</item>
</style>
Run Code Online (Sandbox Code Playgroud)

在AndroidManifest.xml中应用

<application
        android:hardwareAccelerated="true"
        android:label="@string/app_name"
        android:icon="@drawable/ic_launcher"
        android:theme="@style/MyHoloLight">
Run Code Online (Sandbox Code Playgroud)

android android-theme android-styles android-popupwindow

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

如何在CardIView项目上创建透明层?

我在特定的Griditem上需要一个透明层,在那里我点击RED MARKED图标(3个点).我得到了透明层.但它不在网格上.我把它放在活动的顶部.这该怎么做?

**预期结果**

在此输入图像描述

这是我的代码:

在适配器类中:

private void createDialogBox() {
    AlertDialog.Builder builder = new AlertDialog.Builder(context);
    final AlertDialog dialog = builder.create();
    dialog.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
    View dialogLayout = LayoutInflater.from(context).inflate(R.layout.demo_dialog, null);
    dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
    dialog.setView(dialogLayout, 0, 0, 0, 0);


    dialog.setOnShowListener(new DialogInterface.OnShowListener() {
        @Override
        public void onShow(DialogInterface d) {
        }
    });
    dialog.getWindow().setLayout(WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.MATCH_PARENT);
    dialog.show();
}
Run Code Online (Sandbox Code Playgroud)

demo_dialog.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/linearLayout"
    style="@style/LinearLayout_mm"
    android:layout_gravity="center"
    android:gravity="center"
    android:onClick="Click"
    android:orientation="vertical"
    android:theme="@style/cust_dialog">

    <ImageView
        android:id="@+id/pullToRefresh_img"
        style="@style/LinearLayout_mm"
        android:onClick="Click"
        android:src="@drawable/ig_dash_front1" />

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

style.xml:

  <style name="cust_dialog" parent="@android:style/Theme.Holo.NoActionBar.Fullscreen">
        <item name="android:textColor">@color/white</item>
        <item name="android:background">#80000000</item>
        <item name="android:windowFrame">@null</item>
        <item name="android:windowBackground">@color/black</item> …
Run Code Online (Sandbox Code Playgroud)

android android-alertdialog

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

自定义PopupMenu(布局)

我正在尝试升级我的PopupMenu,因此它会带有图标和自定义样式.
我为它创建了一个新的布局

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:layout_width="wrap_content" android:layout_height="wrap_content"
  xmlns:android="http://schemas.android.com/apk/res/android">
    <RelativeLayout
        android:id="@+id/layout_sharea"
        android:background="@drawable/share"
        android:paddingLeft="10.0dip"
        android:paddingRight="10.0dip"
        android:layout_width="wrap_content"
        android:layout_height="50.0dip"
        android:onClick="share">
        <TextView
            android:id="@+id/sharetexta"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="@string/share"
            android:drawableLeft="@drawable/share_button"
            android:drawablePadding="10.0dip"
            android:layout_centerVertical="true" />
     </RelativeLayout>
     <RelativeLayout
        android:id="@+id/layout_shareb"
        android:background="@drawable/share"
        android:paddingLeft="10.0dip"
        android:paddingRight="10.0dip"
        android:layout_width="wrap_content"
        android:layout_height="50.0dip"
        android:layout_below="@+id/layout_sharea"
        android:onClick="share">
        <TextView
            android:id="@+id/sharetextb"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="@string/share"
            android:drawableLeft="@drawable/share_button"
            android:drawablePadding="10.0dip"
            android:layout_centerVertical="true" />
     </RelativeLayout>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

我希望PopupMenu可以自定义(就像这个布局一样) 弹出菜单

layout android popupmenu android-custom-view drop-down-menu

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

像ContextMenu一样获取PopupMenu的上下文

所以我的ExpandableListView组行定义如下:

group_row.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <TextView
        android:id="@+id/GroupName"
        style="@style/ListViewRowStyle"
        android:paddingLeft="40dp"
        android:textSize="18sp" >
    </TextView>

    <ImageView
        android:id="@+id/Menu"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_marginTop="10dp"
        android:contentDescription="@string/default_content_description_text"
        android:src="@drawable/ic_menu_moreoverflow_normal_holo_light" >
    </ImageView>

</RelativeLayout> 
Run Code Online (Sandbox Code Playgroud)

当您单击TextView它时,它将展开或折叠,具体取决于当前是否显示子行.我附上了OnClickListenerImageView组一行.ImageView单击此按钮时,我会启动PopupMenu如下图像:

在此输入图像描述

在此输入图像描述

一旦PopupMenu显示和动作中的一个被点击,我想在该组的所有儿童执行操作.问题是我无法确定ImageView单击的行.

我弄清楚如何将动作应用于所有孩子的唯一方法是使用ContextMenu如下图像:

在此输入图像描述

我想避免使用a,ContextMenu因为组行上的LongClick可能不明显,用户无法确定它会在子行上执行某些操作.我认为更明显的设计是将a锚定PopupMenuImageView(在我的情况下是菜单图标)并将操作应用于该组的子行.我怎样才能获得这个功能PopupMenu

android contextmenu popupmenu expandablelistview onclicklistener

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

如何将Android PopupMenu的背景设置为白色

我正在努力设置PopupMenu的背景.谷歌搜索了一段时间后,我发现它应该转到应用主题.更具体地说,这应该在style.xml中定义.

<style name="AppTheme" parent="AppBaseTheme">
    <item name="android:popupMenuStyle">MY_STYLE</item>
</style>
Run Code Online (Sandbox Code Playgroud)

但是,我并没有真正弄清楚我应该使用哪种风格,因为我认为有一种内置风格.我试着用@android:style/Widget.Holo.PopupMenu@android:style/Widget.Holo.Light.PopupMenu,但没有运气.

java android popupmenu

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

如何使用菜单项中的开关案例启动不同的活动?

 public void onPopup(View view)
{
    final PopupMenu menu=new PopupMenu(this,view);
    menu.getMenuInflater().inflate(R.menu.menu1,menu.getMenu());


    menu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener()
    {
        public boolean onMenuItemClick(MenuItem item)
        {

            Toast toast=Toast.makeText(MainActivity.this,
                    item.getTitle()+"Selected",Toast.LENGTH_SHORT);
            //Intent intent2 = new Intent(MainActivity.this, YourSpotActivity.class);
            //startActivity(intent2);

            //startActivity(new Intent(MainActivity.this,YourSpotActivity.class));

    toast.show();
    return true;
        }
    });
    menu.show();

}
Run Code Online (Sandbox Code Playgroud)

当我单击任何一个列表项时,它将启动另一个活动.我怎么能通过修改上面的代码来做到这一点.请解释一下.我在菜单中使用了四种车型.当我选择那辆车中的任何一辆时,它将进入特定的活动.

android listener switch-statement android-activity

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

造型Android PopupMenu分隔线

PopupMenu在我的应用程序中使用了几个s,它们都按预期工作

菜单图片

但是我希望将白色线条分开,但我无法找到我想要设置的位置.我希望我可以访问底层的ListView,但这似乎不可能.我也看不到与分隔线相关的样式项.

这可能吗,我应该在哪里/如何设置?

customization android divider android-layout android-popupwindow

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

如何在Android中创建弹出菜单

我尝试了以下代码

import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.os.Bundle;
import android.widget.EditText;
import android.widget.ListAdapter;

public class Custom_dialogActivity extends Activity {
/** Called when the activity is first created. */
String test[] = {"Security","Data Backup","Missing Device"};
ListAdapter adapter;
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setCancelable(true);
    builder.setTitle("My Title");
    builder.setInverseBackgroundForced(true);
    builder.setIcon(R.drawable.ic_launcher);
    builder.setItems(test, new OnClickListener() {  
        @Override
        public void onClick(DialogInterface dialog, int which) {
            // TODO Auto-generated method stub
            System.out.println("onClick " + which);

        }
    });
    builder.setAdapter(adapter, …
Run Code Online (Sandbox Code Playgroud)

xml user-interface android

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