2012-06-13 114 views
0

我有一個以下佈局的活動。列表視圖滾動到屏幕底部

enter image description here

所以在這個屏幕上,initally的ListView是空的。我在EditText中鍵入一些文本,然後單擊它旁邊的搜索圖標,應用程序從服務器獲取項目並填充ListView。現在的問題是,ListView滾動到最後一個項目。

代碼在我的搜索Button

代碼在我的消息處理程序的 onClick()
    String str_searchTxt = mEt_search.getText().toString().trim(); 
      if (str_searchTxt.length() == 0) { 
       Toast.makeText(getApplicationContext(), 
         getResources().getString(R.string.ENTER_MANDATORY), 
         Toast.LENGTH_LONG).show(); 
       return; 
      } 
      // get items List in araryList 
      itemList = getItemList(messageHandler,str_searchTxt); 

  public void handleMessage(Message msg) { 
     super.handleMessage(msg); 
     switch (msg.what) { 
     case 2: 
      String txt = msg.getData().getString("text"); 

      Log.i("Result", txt); 
      progressDialog.dismiss(); 
      if (txt.equalsIgnoreCase("success")) { 
       lview3 = (ListView) findViewById(R.id.listView1); 
       adapter = new ListViewCustomAdapter(
         SearchAssetActivity.this, itemList); 
       lview3.setAdapter(adapter); 
       lview3.setOnItemClickListener(SearchAssetActivity.this); 
       lview3.requestFocus(); 
       lview3.setSelection(0);    

      } 
     } 
+1

不明確刷新它 –

+1

發表您的搜索按鈕的onClick代碼 – MAC

回答

3

可以使用的ListView setSelection(position)

mListView.setSelection(first_position); 

否則,你可以試試,

mListView.setSelectionAfterHeaderView(); 
+0

感謝response.I已經編輯我的文章添加代碼。正如你在我的'onclick()'中看到的那樣,我設置了選擇。我也在'onItemClick()'中做了這個。 – Abhilasha

+0

那麼你現在的問題是什麼? –

+0

我的問題是不設置th選擇。如果您閱讀帖子標題,它說** ListView滾動到最後一項**。 setSelection(position)只是突出顯示第一個元素。但列表滾動到最後一個項目..我需要向上滾動列表直到頂部才能看到第一個項目被選中。 – Abhilasha

0

試試這個:

yourscrollview.fullScroll(ScrollView.FOCUS_UP); 
你質疑
+0

非常感謝!但是,我沒有scrollview。屏幕是就像ListView在中間,固定searchBar在頂部和兩個按鈕在底部只有Listview滾動其他元素的滾動 – Abhilasha

+0

每次我獲取一組新的結果我使用下面的代碼重新填充列表:lview3 =(ListView)findViewByI d(R.id.listView1); \t \t \t \t \t \t \t \t \t適配器=新ListViewCustomAdapter( \t \t \t \t \t \t \t \t \t \t \t SearchAssetActivity.this,itemList中); \t \t \t \t \t \t \t \t \t lview3。setAdapter(適配器); \t \t \t \t \t \t \t \t \t adapter.notifyDataSetChanged(); \t \t \t \t \t \t \t \t \t lview3.setSelectionAfterHeaderView();'不過當一次後我填充列表刷新和滾動到列表的最後一個項目。 – Abhilasha

+0

@Lalit:一切都說完之後。它適用於Icream三明治,但問題仍然存在於不滿足的姜麪包上:( – Abhilasha

相關問題