0

我尝试使用android:scrollbarThumbVertical="@drawable/scrollbar"参数将图像添加为滚动条。滚动条已更改,但问题是,它不会显示原始大小,它是根据列表视图大小(项目)进行拉伸的。如果列表项计数为 20 表示它显示正确的尺寸,它大约 50 表示滚动条在整个视图中拉伸。有没有办法避免拉伸。在这里,我将添加带有滚动条图像的代码以及我的输出。

主.xml

<?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="#234232"
    android:orientation="vertical" >

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="@string/hello"
        android:textSize="20sp" />

    <ListView
        android:id="@+id/listView1"
        android:layout_width="250dp"
        android:layout_height="fill_parent"
        android:fadeScrollbars="false"
        android:fadingEdge="none"
        android:scrollbarSize="12dip"
        android:scrollbarStyle="outsideInset"
        android:scrollbarThumbVertical="@drawable/scrollbar" >
    </ListView>

</LinearLayout>

CustomScrollBarAndroidActivity.java

public class CustomScrollBarAndroidActivity extends Activity {
    private ListView list;
    private static List<String> listItems = initListItems();


    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        list = (ListView) findViewById(R.id.listView1);
        list.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, listItems));
    }


    private static List<String> initListItems() {
        List<String> list = new ArrayList<String>();
        boolean isNotFinish = true;
        int i = 0;
        while(isNotFinish){
            list.add("list item #" + i);
            if (i > 50){
                isNotFinish = false;
            }
            i++;
        }
        return list;
    }
}

我的输出图像是,

我的滚动条图像是在此处输入图像描述

4

1 回答 1

2

对此图像使用 draw9 补丁 :)

于 2012-11-29T10:21:11.037 回答