このサイトでは、何か答えを探していましたが、私がこれで見つけた本当の簡単な解決策はありませんでした。私はsqliteデータベースを使って、入力された色の名前で16進値を調べるAndroidアプリケーションを作成しています。テキストとテキストの色を設定してから、ArrayListに動的にTextViewを作成してからArrayListを作成していますListViewに追加されました。テキストはListViewに表示されますが、そのcolorプロパティは設定されていません。私は本当に各リストビュー項目のテキストの色を設定する方法を見つけるのが好きです。ここに私のコードは、これまでのところです:リストビュー項目のテキストビューのテキスト色を設定しますか? (アンドロイド)
クラス変数:のonCreateで
private ListView lsvHexList;
private ArrayList<String> hexList;
private ArrayAdapter adp;
():私のボタンのハンドラで
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.color2hex);
lsvHexList = (ListView) findViewById(R.id.lsvHexList);
hexList = new ArrayList<String>();
:あなたが追加されていません
public void btnGetHexValueHandler(View view) {
// Open a connection to the database
db.openDatabase();
// Setup a string for the color name
String colorNameText = editTextColorName.getText().toString();
// Get all records
Cursor c = db.getAllColors();
c.moveToFirst(); // move to the first position of the results
// Cursor 'c' now contains all the hex values
while(c.isAfterLast() == false) {
// Check database if color name matches any records
if(c.getString(1).contains(colorNameText)) {
// Convert hex value to string
String hexValue = c.getString(0);
String colorName = c.getString(1);
// Create a new textview for the hex value
TextView tv = new TextView(this);
tv.setId((int) System.currentTimeMillis());
tv.setText(hexValue + " - " + colorName);
tv.setTextColor(Color.parseColor(hexValue));
hexList.add((String) tv.getText());
} // end if
// Move to the next result
c.moveToNext();
} // End while
adp = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, hexList);
lsvHexList.setAdapter(adp);
db.close(); // close the connection
}
素晴らしいです。それはどのようにコードに見えますか?ここで初心者のプログラマー。 = P –
私は今ListAdapterの例を持っていませんが、BaseAdapterを拡張するためのリンクを見てください。https://github.com/BinyaminSharet/Icelandic-Memory-Game/blob/master /src/com/icmem/game/BoardGridAdapter.java – MByD
正確には役に立ちません。誰か? –