Горизонтальный список просмотра фона

У меня возникла проблема, связанная с небольшим приложением, в котором я использую пользовательский горизонтальный вид списка. Для создания горизонтального списка я перешел по ссылке ниже.

И XML-макет, как это..

 <com.example.HorizontalListView
      android:id="@+id/listview"
      android:layout_width="fill_parent"
      android:layout_height="wrap_content" 
      android:layout_gravity="center_horizontal"
      android:background="@android:color/transparent"
      android:cacheColorHint="@android:color/transparent"
      android:divider="@color/Black"
       >
  </com.example.HorizontalListView>

Но проблема в том, что я не могу изменить фон для горизонтального списка, кто-нибудь может мне помочь..@ спасибо заранее!!!

2 ответа

Решение

Попробуйте изменить фон динамически.

Пожалуйста, нажмите здесь для API для View со страницы Android Developer Reference. Имейте в виду, что ниже три метода могут быть использованы для добавления фона к View объект:

public void setBackground (Drawable background);
public void setBackgroundColor (int color);
public void setBackgroundResource (int resid);

OnCreate:

@Override  
protected void onCreate(Bundle savedInstanceState) {  
    super.onCreate(savedInstanceState);  

    setContentView(R.layout.listviewdemo);  

    HorizontialListView listview = (HorizontialListView) findViewById(R.id.listview);  
    listview.setAdapter(mAdapter);  

}  

BaseAdapter:

private BaseAdapter mAdapter = new BaseAdapter() {  

    @Override  
    public View getView(int position, View convertView, ViewGroup parent) {  
        View retval = LayoutInflater.from(parent.getContext()).inflate(R.layout.viewitem, null);  
        retval.setBackgroundResource(R.id.my_background); // add this line

        return retval;  
    }  

};  

У меня есть решение. Я также играю с HorizontalListView. Сначала вам нужно добавить эту строку в <LinearLayout> тег viewitem.xml:

android:background="@android:color/transparent"

Тогда сделай это в listviewdemo.xml:

<com.devsmart.android.ui.HorizontalListView
    android:id="@+id/listview"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/background_you_want"
/>

Если вы сделали это правильно, вы увидите фон, показывающий через HorizontalListView. Фон растягивается по всему экрану, и это имеет смысл, потому что HorizontalListView также охватывает весь экран.

Надеюсь это поможет.

Другие вопросы по тегам