2016-04-08 33 views
1

私は現在このコードを使用しています。画面の中央にポップアップメニューを表示する方法

  //Creating the instance of PopupMenu 
      PopupMenu popup = new PopupMenu(MainActivity.this, txt_selectPicture,Gravity.CENTER); 
      //Inflating the Popup using xml file 
      popup.getMenuInflater().inflate(R.menu.menu_createpassword, popup.getMenu()); 
      //registering popup with OnMenuItemClickListener 
      popup.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { 
       public boolean onMenuItemClick(MenuItem item) { 
        Toast.makeText(MainActivity.this, "Opening : " + item.getTitle(), Toast.LENGTH_SHORT).show(); 
        return true; 
       } 
      }); 

      popup.show(); //showing popup menu 

ここでは、txt_selectPictureは重心を持つTextViewです。このtxt_selectPictureがクリックされると、画面の左端にこのメニューが表示されます。しかし、私はそれを中央に表示したい。私はこの解決策を得ました

  new PopupMenu(MainActivity.this, txt_selectPicture,Gravity.CENTER); 

しかし、それは私のために働いていません。事前にありがとうございます。

+0

エラーとは何ですか? –

+0

AlertDialogの使用を検討してください。デフォルトでは、TextViewの位置に関係なく画面の中央に表示されます。 – Endor

+0

@RuchirBaroniaそれはエラーなしで完璧に正常に動作しますが、私は上記のポップアップメニューの代わりに、常に画面の左側にポップアップを表示します。 – Nida

答えて

0

popup.inflate(R.menu.menu_createpassword); 

代わりの

popup.getMenuInflater().inflate(R.menu.menu_createpassword, popup.getMenu()); 

申し訳ありませんが私の悪い英語で試してみてください。

関連する問題