2012-09-12 5 views
1

이제 Android 3.0 (API 11) ECLIPSE로 다른 팝업 프로젝트를 수행하려고합니다. 하지만 오류가 있습니다. PopupMenu로는 어떤 도움을 이해할 수있을 것이다
인수 (INT, Object)를 MainActivity.java) 적용 할 수 없습니다 유형의 유형 PopupMenu.OnMenuItemClickListener MainActivity.javaPopupMenu.OnMenuItemClickListener 유형을 인스턴스화 할 수 없습니다.

&

메소드 getMenuInflater()를 인스턴스화 할 수 없습니다 . 감사. menu.setOnMenuItemClickListener(popupListener);

을 한 후 다른 곳에서 활동 (그러나 onPopupBtClick()의 ​​외부), 인터페이스 구현 :

onPopupBtClick (에서
package com.example.indicationsss; 

import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.view.View; 
import android.widget.PopupMenu; 
import android.widget.Toast; 

public class MainActivity extends Activity { 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_main); 
    } 

    public void onPopupBtClick (View view) { 
      PopupMenu menu = new PopupMenu(this, view); 
     menu.getMenuInflater().inflate(R.menu.activity_main, menu.getMenu()); 
     menu.setOnMenuItemClickListener(**new PopupMenu.OnMenuItemClickListener**()); 
    } 

    public boolean onMenuItemClick(MenuItem item) { 
      Toast toast = Toast.makeText (MainActivity.this, 
      item.getTitle() + "was pressed", 
      Toast.LENGTH_SHORT); 
      toast.show(); 
      return true; 
    } 
} 
+0

을 누구가 문제인지 아십니까? – HELPED

답변

3

)과 같이 자신의 popupListener 인터페이스를 선언

private PopupMenu.OnMenuItemClickListener popupListener = new PopupMenu.OnMenuItemClickListener() { 
        @Override 
        public boolean onMenuItemClick(MenuItem item) { 
        // etc., etc., 
        .... 
        } 
    } 
관련 문제