我正在創(chuàng)建一個包含兩個視圖的自定義列表視圖:一個 Imageview 和一個 TextView。一切正常,但我想訪問列表視圖的特定位置以更改可見性。我試過這個方法,但它不起作用。private void updateView(int index){// View v = mListView.getChildAt(index-mListView.getFirstVisiblePosition()); View v = mListView.getAdapter().getView(index-mListView.getFirstVisiblePosition(), null, mListView); if (v==null){ return; } ImageView imageView = Objects.requireNonNull(v).findViewById(R.id.listview_image); imageView.setAlpha(0.2f); imageView.setVisibility(View.GONE); }例如:如果首選項包含“排名”,那么我想將 setAlpha(0.2f) 設置為列表視圖中的位置 0 到 5。
1 回答

慕尼黑的夜晚無繁華
TA貢獻1864條經(jīng)驗 獲得超6個贊
根據(jù)您的代碼,您需要將以下行添加到 getView 方法的末尾
自定義適配器列表視圖
if (Objects.requireNonNull(preferences.getString("rank", "")).equalsIgnoreCase("Recruit")
&& position <= 5) //will check the item position
{
//setAlpha or do anything you want if the Rank is Recruit and position is lesser or equal to 5
holder.img.setAlpha(0.2f);
} else
{
//else do the remaining part
}
return view;
添加回答
舉報
0/150
提交
取消