0

Я хочу реализовать ActionBar в списке. Как указано в developer.android.com Я пробовал использовать расширение действия ActionBar в своем коде. Мой код отлично работает, когда я даю extends Activity, но я не получу ActionBar. Код падает, когда я использую extends ActionBarActivity с java.lang.exceptionininitializererror.Реализация панели действий в виде списка

У меня есть библиотека поддержки. Снимок экрана прилагается. Импортированные библиотеки поддерживаются android-support-v4.jar android-support-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

, что ваша версия minsdk в очевидном – Raghunandan

+0

Это 8. <использует-SDk андроида: minSdkVersion = "8" андроид: targetSdkVersion = "11" /> – Sharan

+0

ваша деятельность должна распространяться 'ActionBarActivity' – Raghunandan

ответ

0

Вы должны добавить AppCompat библиотеку как библиотека проекта не только импортировать баночку.

Импорт appcompat в вашу IDE от android_sdk_dir/extras/android/support/v7/appcompat.

Добавьте его в проект как проект библиотеки. (Проект -> Свойства -> Android -> Библиотека -> Добавить .. и выберите appcompat).

Не забудьте изменить тему приложения на Theme.AppCompat.

+0

OOPS ... Извините, я забыл упомянуть об этом. Добавили его как проект библиотеки в путь сборки JAVA. – Sharan

+0

Вы не можете добавить это из пути сборки java. Удалите его и добавьте, как я объяснил в своем ответе –

+0

Большое спасибо. Я попробую. – Sharan