我想在listview中实现ActionBar。 正如在developer.android.com中给出的那样,我尝试在代码中使用扩展ActionBar活动。 当我给extend活动时,我的代码运行正常,但我不会得到一个ActionBar。 当我使用扩展ActionBarActivity和java.lang.exceptionininitializererror时代码崩溃。
我已导入支持库。屏幕截图已附上。 导入的库是android-support-v4.jar 机器人支撑-V7-appcompat.jar。
以下是我的代码。 请指导我。
如果我可以使用任何其他方式,请告诉我。
public class ImageTextListViewActivity extends Activity implements OnItemClickListener {
public static final String[] titles = new String[] { "Football",
"Basketball" };
public static final Integer[] images = { R.drawable.football,
R.drawable.basketball };
ListView listView;
List<RowItem> rowItems;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//ActionBar actionBar = getSupportActionBar();
// actionBar.setDisplayShowTitleEnabled(false);
//android.graphics.drawable.ColorDrawable.setColor(0xff9ACC00);
//actionBar.setBackgroundDrawable(colorDrawable);
//actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
rowItems = new ArrayList<RowItem>();
for (int i = 0; i < titles.length; i++) {
RowItem item = new RowItem(images[i], titles[i]);
rowItems.add(item);
}
listView = (ListView) findViewById(R.id.list);
CustomListViewAdapter adapter = new CustomListViewAdapter(this,
R.layout.list_item, rowItems);
listView.setAdapter(adapter);
listView.setOnItemClickListener(this);
}
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
//Navigation to next page
Intent myIntent = new Intent(view.getContext(), Football.class);
myIntent.putExtra("Game",listView.getItemAtPosition(position).toString());
startActivityForResult(myIntent, 0);
//Navigation ends
}
}
答案 0 :(得分:0)
您必须将 appcompat 库添加为库项目,而不仅仅是导入jar。
从android_sdk_dir/extras/android/support/v7/appcompat
将 appcompat 导入您的IDE。
将其作为库项目添加到项目中。 (项目 - &gt;属性 - &gt; Android - &gt;库 - &gt;添加..并选择appcompat。)
不要忘记将应用主题更改为Theme.AppCompat
。