【问题标题】:Setting ListView scrollbar on the left, supporting API level 7左侧设置ListView滚动条,支持API level 7
【发布时间】:2013-10-17 18:00:31
【问题描述】:

我正在扩展课程SherlockListFragment

在这个类中,我调用 getListView() 来检索与我的 Fragment 相关的 ListView

下面显示了我正在使用的方法getListView() 的签名:

ListView android.support.v4.app.ListFragment.getListView()

问题是我想通过这个ListView调用setVerticalScrollbarPosition(),但是我的项目有minSDK = 7,所以下面的代码:

getListView().setVerticalScrollbarPosition(View.SCROLLBAR_POSITION_LEFT);

给我错误:

- Call requires API level 11 (current min is 7): 
     android.widget.ListView#setVerticalScrollbarPosition

如何使用此方法,以便在 API 级别 7 的系统中也能正常工作?

注意:我不想使用@suppressLint

【问题讨论】:

    标签: android android-listview android-fragments actionbarsherlock android-listfragment


    【解决方案1】:

    您需要说明方法内运行的代码适用于 API 11 及更高版本

    @TargetApi(Build.VERSION_CODES.HONEYCOMB)
    public void doVertScrollThingy() {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
            getListView().setVerticalScrollbarPosition(View.SCROLLBAR_POSITION_LEFT);
        } else {
            // do something else, because setVerticalScrollbarPosition isn't supported
        }
    }
    

    【讨论】:

    • 不,我希望具有 API 7、8、9、10 的设备具有相同的功能。我正在寻找一些支持库。
    • 啊,我的错。尝试查看这个线程 - stackoverflow.com/questions/10826879/… 发布了一个解决方案,没有 cmets 说它有效,但您可以尝试一下。它涉及扩展ListView
    猜你喜欢
    • 2012-05-23
    • 1970-01-01
    • 2014-07-06
    • 2011-11-12
    • 2011-08-09
    • 1970-01-01
    • 2015-02-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多