изменение изображения на просмотр списка во время выполнения в Android - PullRequest
0 голосов
/ 03 июня 2010

Я использую LinearLayout для отображения текста и изображения.У меня есть изображения в drawable /, и я реализую это с ListActivity с некоторыми функциями onListItemClick.Теперь я хочу изменить изображение для строк, которые обрабатываются функциональностью onclick, чтобы показать статус как обработанный.Может ли кто-нибудь помочь мне в этом вопросе изменить изображение во время выполнения.

Следующее - моя импликация.

открытый класс ListWithImage extends ListActivity {/ ** Вызывается при первом создании действия.* /

private SimpleCursorAdapter myAdapter;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
 // raj   setContentView(R.layout.main);

    Cursor cursor = getContentResolver().query(People.CONTENT_URI, null, null, null, null);
    startManagingCursor(cursor);

    String[] columns = new String[] {People.NAME, People.NUMBER};
    int[] names = new int[] {R.id.contact_name, R.id.contact_number};

    myAdapter = new SimpleCursorAdapter(this, R.layout.main, cursor, columns, names);
    setListAdapter(myAdapter);

}


@Override
protected void onListItemClick(ListView listView, View view, int position, long id) {
    super.onListItemClick(listView, view, position, id);

    Intent intent = new Intent(Intent.ACTION_CALL);
    Cursor cursor = (Cursor) myAdapter.getItem(position);
    long phoneId = cursor.getLong(cursor.getColumnIndex(People.PRIMARY_PHONE_ID));
    intent.setData(ContentUris.withAppendedId(Phones.CONTENT_URI, phoneId));

    startActivity(intent);
}

}

и main.xml:

<LinearLayout
    android:layout_height="wrap_content" android:orientation="vertical" android:layout_width="250px">
 <LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" android:orientation="horizontal">

   <TextView
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:text="Name: " />

   <TextView android:id="@+id/contact_name"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content" />
</LinearLayout> 
    <LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content" android:orientation="horizontal">          
   <TextView
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:text="Phone: " />       
   <TextView android:id="@+id/contact_number"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content" />
</LinearLayout>  


Я думал добавить поле в БД.но я не смог узнать, как изменить изображение с помощью кода.Может ли кто-нибудь предоставить мне пример для рисования изображения с кодом и изменения его в зависимости от условия во время выполнения.

1 Ответ

0 голосов
/ 03 июня 2010

Я сделал то же самое в своем приложении (однако я использовал не cursoradapter, а собственный адаптер, однако логика должна быть такой же).

Что мне нужно, чтобы получить эту работу, так это включить в базу данных поле, которое указывает, обрабатывается ли поле или нет (или какое-то поле, решающее, какое изображение показывать). Затем вам нужно привязать адрес ваших изображений к этому полю. Я не знаю, можете ли вы сделать это с помощью simplecursoradapter или вам нужно реализовать свой собственный.

Затем, когда пользователь щелкает элемент, вы просто устанавливаете этот элемент как обработанный в БД, и вы сообщаете адаптеру, что он обновлен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...