2015-10-14 60 views
0

我有一個baseadapter,它總是從位置0或位置1的頂部開始,但有沒有可能使我的Baseadapter從位置5開始?我一直在這裏尋找並沒有發現這方面的資料,這是我baseadapter,是的它連接到一個列表視圖,但我知道的是,列表視圖開始由BaseAdapter我怎樣才能讓baseadapter在不同於0或1的位置開始

public class myadapter extends BaseAdapter { 

    Context context; 
    LayoutInflater myiflater; 
    public myadapter() { 

     myiflater = (LayoutInflater) c.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
    } 


    @Override 
    public int getCount() { 
    return 20; 



    } 

    @Override 
    public Object getItem(int position) { 
     return 5; 
    } 

    @Override 
    public long getItemId(int position) { 
     return 5; 
    } 

    @Override 
    public View getView(int position, View convertView, ViewGroup parent) { 

// all of this is already correct 
     } 
catch (Exception e) { 
      e.printStackTrace(); 
     } 
     return convertView; 
      } 
     return convertView; 
    } 
} 

控制,你可以在位置看到我試圖設置在5的起始位置,但它不會工作。

回答

1

與你的ListView這樣做:

mListView.setSelection(5); 

setSelection()設置的ListView通過適配器的當前位置。你嘗試的方式沒有意義。對於getItem()方法,應該返回對象,而不是位置的數字值。讓我知道,如果這樣的作品

+0

非常感謝,非常感謝它。 – user1591668

+0

對,現在問題很高興幫助! –