应用程序崩溃搜索

问题描述:

该应用程序崩溃,因为它希望我把android.R.id.list放在内容方法中,这是不可能的,因为它需要一个布局引用,而不是一个列表视图引用。应用程序崩溃搜索

public class SearchResultsActivity extends ListActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_result); 
     handleIntent(getIntent()); 
    } 
    @Override 
    public void onListItemClick(ListView l, 
           View v, int position, long id) { 
     // call detail activity for clicked entry 
    } 

    @Override 
    public void onNewIntent(Intent intent) { 
     setIntent(intent); 
     handleIntent(intent); 
    } 


    private void handleIntent(Intent intent) { 
     DatabaseTable db = new DatabaseTable(this); 
     if (Intent.ACTION_SEARCH.equals(intent.getAction())) { 
      String query = intent.getStringExtra(SearchManager.QUERY); 
      Cursor c = db.getWordMatches(query, null); 
     } 
    } 
} 
+0

这是因为您有一个ListActivity ....因此您需要一个带有id:List的ListView .... – Opiatefuchs

+1

'它希望我把android.R.id .list'这发生在使用ListActivities或ListFragments而不是简单的ListViews时 –

直接从文档

ListActivity拥有一个由在屏幕中心的单一,全屏幕列表的默认布局。但是,如果您愿意,可以通过在onCreate()中使用setContentView()设置您自己的视图布局来自定义屏幕布局。要做到这一点,自己的观点必须包含id为一个ListView对象“@android:ID /列表”(或列表,如果它在代码)

为了解决您的发言

这是不可能的

为什么不呢?只需将您的ListView更改为您的activity_result.xml即可使用@android:id/list