0

我有一個列表視圖與所有應用程序安裝..我需要onItemLongClick卸載應用程序我點擊列表視圖。對於onItemLongClick的起始碼是這個:Listview和onItemLongClick不起作用

@Override 
    public boolean onItemLongClick(AdapterView<?> arg0, View arg1, int arg2, 
      long arg3) { 
     // TODO Auto-generated method stub 
     return false; 
    } 

這是卸載:

ApplicationInfo app = applist.get(position); 

     Uri packageUri = Uri.parse("package:"+app.packageName); 
     Intent uninstallIntent = 
      new Intent(Intent.ACTION_DELETE, packageUri); 
     startActivity(uninstallIntent); 

     return true; 

我也需要插入一些參數和我tryied這一個,但我有一個錯誤在onItemLongClick

protected boolean setOnItemLongClickListener(ListView l, View v, int position, long id) { 
     super.onItemLongClick(l, v, position, id);// Error 

     ApplicationInfo app = applist.get(position); 

     Uri packageUri = Uri.parse("package:"+app.packageName); 
     Intent uninstallIntent = 
      new Intent(Intent.ACTION_DELETE, packageUri); 
     startActivity(uninstallIntent); 

     return true; 
    } 

我該如何解決?

+0

你有什麼錯誤?在這裏發佈你的logcat –

+0

沒有日誌cat上的錯誤,但語法:'onItemLongClick(ListView,View,int,long)方法未定義爲類型ListActivity' ..我在我的Main類中實現了'OnItemLongClickListener',但是如果我通過在「MainActivity」我得到這個建議:'類型MainActivity必須實現繼承的抽象方法AdapterView.OnItemLongClickListener.onItemLongClick(AdapterView ,View,int,long)' –

+0

您是否記得設置listView.setOnLongClickListener(this); ?? – Jakob

回答

1

嘗試實現這個

import android.widget.AdapterView.OnItemLongClickListener; 


yourListView.setOnItemLongClickListener(new OnItemLongClickListener() { 

      @Override 
      public boolean onItemLongClick(AdapterView<?> arg0, View arg1, 
        int arg2, long arg3) { 
       // TODO Auto-generated method stub 
       Toast.makeText(MainActivity.this, "delete item in position : " + arg2, Toast.LENGTH_SHORT).show(); 
       return false; 
      } 
     }); 
+0

是的,他只是'overOver setOnItemLongClickListener。 –