English 中文(简体)
简言之:各行各样的口号
原标题:Android: ListView background for each row-item

我有以下意见:

<ListView android:id="@android:id/list" android:layout_width="fill_parent" android:divider="@drawable/line"
        android:layout_height="fill_parent" android:background="@drawable/bg"/>

但我想为每个增长项目确定背景。 当我确定底栖财产时,我改变了整个清单的背景,而不仅仅是每一行。

How can I set the drawable background for each item in the row? I have tried everything. The only thing I can change is the android:divider drawable shown between the rows. Thanks in advance!

问题回答

you need to specify a costum view layout for your rows, like a LinearLayout or so. in this layout you specify the background color or image or what ever.

later in your list adapter in the getView() function you load this layout with the layout inflater and returbn this view.

*Use Custom Adapter.

First create Custom Adapter class and set this to fill listView

ex: 

class CusAdapter extends BaseAdapter
 {

  private Context mContext;

  public ImageAdapter(Context c)
  {

   mContext = c;

  }

  public int getCount()

  {

   return 10;
  }

  public Object getItem(int position)

  {

   return null;

  }

  public long getItemId(int position)
  {

   return 0;

  }

  // create a new ImageView for each item referenced by the Adapter

  public View getView(int position, View convertView, ViewGroup parent)
  {

           //create a layout for listView

           LinearLayout lLayout = new LinearLayout(this);

       lLayout.setOrientation(LinearLayout.VERTICAL);

       lLayout.setLayoutParams(new LayoutParams(
           LayoutParams.MATCH_PARENT,

       LayoutParams.MATCH_PARENT));


         //check position and set background

            if(position%2==0)
            {

                   lLayout.setBackgroundResource(R.id.bckResource1);

               } 
            else

                   lLayout.setBackgroundResource(R.id.bckResource2);

        return lLayout;

   }

}

 after this set this adapter to fill listview

 listView.setAdpater(new cusAdapter(this));* 




相关问题
Android - ListView fling gesture triggers context menu

I m relatively new to Android development. I m developing an app with a ListView. I ve followed the info in #1338475 and have my app recognizing the fling gesture, but after the gesture is complete, ...

AsyncTask and error handling on Android

I m converting my code from using Handler to AsyncTask. The latter is great at what it does - asynchronous updates and handling of results in the main UI thread. What s unclear to me is how to handle ...

Android intent filter for a particular file extension?

I want to be able to download a file with a particular extension from the net, and have it passed to my application to deal with it, but I haven t been able to figure out the intent filter. The ...

Android & Web: What is the equivalent style for the web?

I am quite impressed by the workflow I follow when developing Android applications: Define a layout in an xml file and then write all the code in a code-behind style. Is there an equivalent style for ...

TiledLayer equivalent in Android [duplicate]

To draw landscapes, backgrounds with patterns etc, we used TiledLayer in J2ME. Is there an android counterpart for that. Does android provide an option to set such tiled patterns in the layout XML?

Using Repo with Msysgit

When following the Android Open Source Project instructions on installing repo for use with Git, after running the repo init command, I run into this error: /c/Users/Andrew Rabon/bin/repo: line ...

Android "single top" launch mode and onNewIntent method

I read in the Android documentation that by setting my Activity s launchMode property to singleTop OR by adding the FLAG_ACTIVITY_SINGLE_TOP flag to my Intent, that calling startActivity(intent) would ...

From Web Development to Android Development

I have pretty good skills in PHP , Mysql and Javascript for a junior developer. If I wanted to try my hand as Android Development do you think I might find it tough ? Also what new languages would I ...

热门标签