一度に1行だけを強調表示したいのですが、これをTextView
可視化することで行っています(または、最初の試行で使用したBadgeViewライブラリを使用しましたが、このバグを生成し、ライブラリの欠陥/バグだと思いました) .
これが私のアプローチです:(私はこのメソッドを私のでオーバーライドしましたSimpleCursorAdapter
)
@Override
public void bindView(View view, Context context, Cursor cursor) {
super.bindView(view, context, cursor);
int rowId = Integer.valueOf(((TextView) view.findViewById(R.id.two_line_rowid)).getText().toString());
if (rowId == mRowIdSelected) {
((TextView) view.findViewById(android.R.id.text1)).setText("SELECTED");
((TextView) view.findViewById(R.id.select_badge)).setVisibility(View.VISIBLE);
}
}
それはかなりうまく機能しますが、バグがあります。android.R.id.text1
選択した行の唯一の変更のテキスト。これは意図したとおりに機能していますが、意図したとおりに機能していないTextView
最初の行と選択した行でテキストが表示されます。
何か案は?