如何编写ListView适配器在Android中显示多个饼图

如何编写ListView适配器在Android中显示多个饼图,android,listview,Android,Listview,我想使用ListView在ListView的每一行中显示饼图 这是我的饼图课程 public class PieChart extends View { public PieChart(Context context) { super(context); } public PieChart(Context context, AttributeSet attrs){ super(context, attrs); } pu

我想使用ListView在ListView的每一行中显示饼图

这是我的饼图课程

public class PieChart extends View {

    public PieChart(Context context) {
        super(context);
    }

    public PieChart(Context context, AttributeSet attrs){
        super(context, attrs);
    }

    public void onDraw(Canvas canvas) {
        Paint paint = new Paint();
        paint.setColor(Color.RED);    
        canvas.drawArc(new RectF(0, 0, 150, 150), 180, 90, true, paint);            
        paint.setColor(Color.BLUE);         
        canvas.drawArc(new RectF(0, 0, 150, 150), 90, 90, true, paint);
    }
}
这是我的ListView布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@color/background"
    android:orientation="vertical" >

    <TextView
        style="@style/title_bar"
        android:text="@string/scenario_reports" />

    <ListView
        android:id="@android:id/list"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="@color/list_view_item_bg"
        android:cacheColorHint="#00000000"
        android:divider="@color/list_view_divider"
        android:dividerHeight="2dip" >
    </ListView>

</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

    <view
        android:id="@+id/pie_chart"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        class="com.bob.hellotest.GameView" />

    <TextView
        android:id="@+id/scenario_name"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_toLeftOf="@id/pie_chart"
        android:padding="10dp"
        android:textSize="16sp" />

</RelativeLayout>
我的问题是适配器

public View getView(int position, View row, ViewGroup parent) {
        LayoutInflater li = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        View rowView = li.inflate(R.layout.list_view_scenario_pie, parent, false);
        View pie = (View) rowView.findViewById(R.id.pie_chart);
        TextView name = (TextView) rowView.findViewById(R.id.scenario_name);

    ????????????????

        return rowView;
    }
我卡在适配器中,不知道如何在适配器中绘制它。
有人能帮忙吗。干杯

将列表行的布局更改为

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:id="@+id/pie_chart"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
/>

<TextView
    android:id="@+id/scenario_name"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_toLeftOf="@id/pie_chart"
    android:padding="10dp"
    android:textSize="16sp" />

</RelativeLayout>

将列表行的布局更改为

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:id="@+id/pie_chart"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
/>

<TextView
    android:id="@+id/scenario_name"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_toLeftOf="@id/pie_chart"
    android:padding="10dp"
    android:textSize="16sp" />

</RelativeLayout>
public View getView(int position, View row, ViewGroup parent) {
     if(row == null) {
         row = this.inflator.inflate(layout, null);
     }
     ViewGroup vg = (ViewGroup)row.findViewById(R.id. pie_chart);
     PieChart pieChart = new PieChart(row.getContext);
     vg.addView(PieChar);

     return row;
}