0

我正在扩展课程SherlockListFragment

在这个类中,我要求getListView()检索ListView与我的 Fragment 相关的内容。

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

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

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

getListView().setVerticalScrollbarPosition(View.SCROLLBAR_POSITION_LEFT);

给我错误:

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

我怎样才能使用这种方法,以便在 API 级别 < 11 和 > 7 的系统中也能工作?

注意:我不想使用@suppressLint

4

1 回答 1

0

您需要说明在该方法中运行的代码适用于 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
    }
}
于 2013-10-17T18:07:48.970 回答