Android 即使支持库是使用ActionBarSherlock导入的,也无法使用GridLayout
我有一个Android项目,我在其中使用ActionBarSherlock,我将其作为一个单独的项目导入到工作区中,该项目还包含Android支持库 我现在想使用GridLayout,我假设,考虑到支持的存在 图书馆,它将被承认和可用,但它不是。Eclipse告诉我,我需要将项目的最小API设置为14,而我不得不将其设置为8。有没有办法解决这个问题Android 即使支持库是使用ActionBarSherlock导入的,也无法使用GridLayout,android,actionbarsherlock,grid-layout,Android,Actionbarsherlock,Grid Layout,我有一个Android项目,我在其中使用ActionBarSherlock,我将其作为一个单独的项目导入到工作区中,该项目还包含Android支持库 我现在想使用GridLayout,我假设,考虑到支持的存在 图书馆,它将被承认和可用,但它不是。Eclipse告诉我,我需要将项目的最小API设置为14,而我不得不将其设置为8。有没有办法解决这个问题 我希望这足够清楚。谢谢您的帮助。如果不查看项目设置,很难识别您的问题。 我能够从头开始创建新项目,它使用ActionBarSherlock和Grid
我希望这足够清楚。谢谢您的帮助。如果不查看项目设置,很难识别您的问题。 我能够从头开始创建新项目,它使用
ActionBarSherlock
和GridLayout
库
SDK
,ActionBarSherlock
,GridLayout
和v4支持库以及更新的ADT Eclipse
插件
Build SDK = Android 4.1 (API 16)
Minimum Required SDK = API 8
res
文件夹并删除values-v11
和values-v13
子文件夹res\values\styles.xml
:
<resources>
<style name="AppTheme" parent="Theme.Sherlock.Light" />
</resources>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<android.support.v7.widget.GridLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
app:columnCount="2"
tools:context=".MainActivity" >
<TextView
android:padding="@dimen/padding_medium"
android:text="@string/cell1"
tools:context=".MainActivity" />
<TextView
android:padding="@dimen/padding_medium"
android:text="@string/cell2"
tools:context=".MainActivity" />
<TextView
android:padding="@dimen/padding_medium"
android:text="@string/cell3"
tools:context=".MainActivity" />
<TextView
android:padding="@dimen/padding_medium"
android:text="@string/cell4"
tools:context=".MainActivity" />
</android.support.v7.widget.GridLayout>
</RelativeLayout>
package com.test.gridlayout;
import android.os.Bundle;
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.app.SherlockFragmentActivity;
import com.actionbarsherlock.view.Menu;
public class MainActivity extends SherlockFragmentActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ActionBar ab = getSupportActionBar();
ab.setDisplayShowTitleEnabled(true);
ab.setDisplayUseLogoEnabled(false);
ab.setDisplayHomeAsUpEnabled(false);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getSupportMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
如果您仍然有问题,请使用demo project作为起点。GridLayout仅向后移植到API 7+,并作为库项目在SDK文件夹中提供。您可以在
SDK/extras/android/support/v7
上找到它
它不是ABS或v4支持库jar的一部分。+1表示“android.support.v7.widget.GridLayout”。这正是我所需要的。