-2
<menu xmlns:android="http://schemas.android.com/apk/res/android" >

<item
    android:id="@+id/action_settings"
    android:orderInCategory="100"
    android:showAsAction="never"
    android:icon="@drawable/ic_launcher"
    android:title="@string/action_settings"/>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/hello_world" />

<Button  
    android:id="@+id/button1"  
    android:layout_width="wrap_content"  
    android:layout_height="wrap_content"  
    android:layout_alignParentLeft="true"  
    android:layout_alignParentTop="true"  
    android:layout_marginLeft="62dp"  
    android:layout_marginTop="50dp"  
    android:text="Show Popup" />  

///

/res/layout/activity_main.xml

public class MainActivity extends Activity {
private Button button1;
@Override
protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);  
          setContentView(R.layout.activity_main);  

          button1 = (Button) findViewById(R.id.button1);  
          button1.setOnClickListener(new OnClickListener() {  

           @Override  
           public void onClick(View v) {  
            //Creating the instance of PopupMenu




            PopupMenu popup = new PopupMenu(MainActivity.this, button1);  
            //Inflating the Popup using xml file  
            popup.getMenuInflater().inflate(R.menu.main, popup.getMenu());  
            //popup.add(0, MENU_QUIT, 0, "Quit").setIcon(R.drawable.menu_quit_icon);

            //registering popup with OnMenuItemClickListener 

            popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {  

             public boolean onMenuItemClick(MenuItem item) { 

              Toast.makeText(MainActivity.this,"You Clicked : " + item.getTitle(),Toast.LENGTH_SHORT).show();  
              return true;  
             }  
            });  

            popup.show();//showing popup menu  
           }  
          });//closing the setOnClickListener method  
         } 


@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

}

//これが主なアクティビティです

ポップアップは正常に動作しますが、android:icon="@drawable/ic_launcher" は動作しません popmenu に画像/アイコンが表示されません。 Android の popmenu にアイコンを設定する方法を教えてください。私はアンドロイドが初めてです。

4

1 に答える 1

1

行を変更:

android:showAsAction="never"

android:showAsAction="ifRoom"

また

android:showAsAction="always"
于 2014-04-17T07:02:51.987 に答える