Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Ssnake707
8 / 8 / 6
Регистрация: 02.02.2015
Сообщений: 140
#1

Ошибка setSupportActionBar(ToolBar) - Программирование Android

16.12.2015, 23:25. Просмотров 1291. Ответов 2

Всем привет.
Ломаю голову уже несколько часов, не могу понять почему вылетает приложение на setSupportActionBar(toolBar);

Код MainActivity.java

Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package com.ssnake.highday;
 
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
 
 
public class MainActivity extends AppCompatActivity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Toolbar toolbar = (Toolbar) findViewById(R.id.main_toolbar);
        initToolBar(toolbar);
    }
 
    private void initToolBar(Toolbar toolbar) {
        toolbar.inflateMenu(R.menu.menu_main);
        toolbar.setTitle(getResources().getString(R.string.app_name));
        setSupportActionBar(toolbar);
    }
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }
 
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
 
        //noinspection SimplifiableIfStatement
 
 
        return true;
    }
}


Код main.xml

Кликните здесь для просмотра всего текста
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<LinearLayout 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:orientation="vertical"
    tools:context=".MainActivity">
 
    <android.support.v7.widget.Toolbar
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:minHeight="?attr/actionBarSize"
        android:background="@color/blue"
        android:id="@+id/main_toolbar"
        android:theme="@android:style/Theme.Holo.NoActionBar"
        app:popupTheme="@style/ThemeOverlay.AppCompat.Light">
    </android.support.v7.widget.Toolbar>
 
</LinearLayout>


Код menu_main.xml

Кликните здесь для просмотра всего текста
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:appcompat="http://schemas.android.com/apk/res-auto"
    tools:context=".MainActivity">
    <item
        android:id="@+id/menu_search"
        android:title="@string/search"
        android:theme="@android:style/Theme.Holo.Light.NoActionBar"
        appcompat:actionViewClass="android.support.v7.widget.SearchView"
        appcompat:showAsAction="always" />
    <item
        android:id="@+id/menu_filter"
        android:title="@string/filtr"
        app:showAsAction="never" />
    <item
        android:id="@+id/menu_lang"
        android:title="@string/lang"
        app:showAsAction="never" />
    <item
        android:id="@+id/menu_uvedomlenie"
        android:title="@string/uvedomlenie"
        app:showAsAction="never" />
    <item
        android:id="@+id/menu_addMyPrazdnik"
        android:title="@string/addMyPrazdnik"
        app:showAsAction="never" />
    <item
        android:id="@+id/menu_myStrana"
        android:title="@string/MyStrana"
        app:showAsAction="never" />
 
</menu>


Логи

Кликните здесь для просмотра всего текста
12-17 02:20:55.471 32073-32073/com.ssnake.highday W/dalvikvm﹕ VFY: unable to find class referenced in signature (Landroid/view/SearchEvent
12-17 02:20:55.471 32073-32073/com.ssnake.highday I/dalvikvm﹕ Could not find method android.view.Window$Callback.onSearchRequested, referenced from method android.support.v7.internal.view.WindowCallbackWrapper.onSearchRequested
12-17 02:20:55.471 32073-32073/com.ssnake.highday W/dalvikvm﹕ VFY: unable to resolve interface method 14478: Landroid/view/Window$Callback;.onSearchRequested (Landroid/view/SearchEventZ
12-17 02:20:55.471 32073-32073/com.ssnake.highday D/dalvikvm﹕ VFY: replacing opcode 0x72 at 0x0002
12-17 02:20:55.471 32073-32073/com.ssnake.highday I/dalvikvm﹕ Could not find method android.view.Window$Callback.onWindowStartingActionMode, referenced from method android.support.v7.internal.view.WindowCallbackWrapper.onWindowStartingActionMode
12-17 02:20:55.471 32073-32073/com.ssnake.highday W/dalvikvm﹕ VFY: unable to resolve interface method 14482: Landroid/view/Window$Callback;.onWindowStartingActionMode (Landroid/view/ActionMode$Callback;I)Landroid/view/ActionMode;
12-17 02:20:55.471 32073-32073/com.ssnake.highday D/dalvikvm﹕ VFY: replacing opcode 0x72 at 0x0002
12-17 02:20:55.521 32073-32073/com.ssnake.highday I/dalvikvm﹕ Could not find method android.content.res.TypedArray.getChangingConfigurations, referenced from method android.support.v7.internal.widget.TintTypedArray.getChangingConfigurations
12-17 02:20:55.521 32073-32073/com.ssnake.highday W/dalvikvm﹕ VFY: unable to resolve virtual method 406: Landroid/content/res/TypedArray;.getChangingConfigurations ()I
12-17 02:20:55.521 32073-32073/com.ssnake.highday D/dalvikvm﹕ VFY: replacing opcode 0x6e at 0x0002
12-17 02:20:55.521 32073-32073/com.ssnake.highday I/dalvikvm﹕ Could not find method android.content.res.TypedArray.getType, referenced from method android.support.v7.internal.widget.TintTypedArray.getType
12-17 02:20:55.521 32073-32073/com.ssnake.highday W/dalvikvm﹕ VFY: unable to resolve virtual method 428: Landroid/content/res/TypedArray;.getType (I)I
12-17 02:20:55.521 32073-32073/com.ssnake.highday D/dalvikvm﹕ VFY: replacing opcode 0x6e at 0x0002
12-17 02:20:55.631 32073-32073/com.ssnake.highday I/dalvikvm﹕ Could not find method android.content.res.Resources.getDrawable, referenced from method android.support.v7.internal.widget.ResourcesWrapper.getDrawable
12-17 02:20:55.631 32073-32073/com.ssnake.highday W/dalvikvm﹕ VFY: unable to resolve virtual method 369: Landroid/content/res/Resources;.getDrawable (ILandroid/content/res/Resources$ThemeLandroid/graphics/drawable/Drawable;
12-17 02:20:55.631 32073-32073/com.ssnake.highday D/dalvikvm﹕ VFY: replacing opcode 0x6e at 0x0002
12-17 02:20:55.631 32073-32073/com.ssnake.highday I/dalvikvm﹕ Could not find method android.content.res.Resources.getDrawableForDensity, referenced from method android.support.v7.internal.widget.ResourcesWrapper.getDrawableForDensity
12-17 02:20:55.631 32073-32073/com.ssnake.highday W/dalvikvm﹕ VFY: unable to resolve virtual method 371: Landroid/content/res/Resources;.getDrawableForDensity (IILandroid/content/res/Resources$ThemeLandroid/graphics/drawable/Drawable;
12-17 02:20:55.631 32073-32073/com.ssnake.highday D/dalvikvm﹕ VFY: replacing opcode 0x6e at 0x0002
12-17 02:20:55.681 32073-32073/com.ssnake.highday D/AndroidRuntime﹕ Shutting down VM
12-17 02:20:55.681 32073-32073/com.ssnake.highday W/dalvikvm﹕ threadid=1: thread exiting with uncaught exception (group=0x41ae7da0)
12-17 02:20:55.681 32073-32073/com.ssnake.highday E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.ssnake.highday, PID: 32073
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ssnake.highday/com.ssnake.highday.MainActivity}: java.lang.IllegalStateException: This Activity already has an action bar supplied by the window decor. Do not request Window.FEATURE_SUPPORT_ACTION_BAR and set windowActionBar to false in your theme to use a Toolbar instead.
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2449)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2509)
at android.app.ActivityThread.access$900(ActivityThread.java:172)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1308)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:146)
at android.app.ActivityThread.main(ActivityThread.java:5694)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1291)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1107)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalStateException: This Activity already has an action bar supplied by the window decor. Do not request Window.FEATURE_SUPPORT_ACTION_BAR and set windowActionBar to false in your theme to use a Toolbar instead.
at android.support.v7.app.AppCompatDelegateImplV7.setSupportActionBar(AppCompatDelegateImplV7.java:199)
at android.support.v7.app.AppCompatActivity.setSupportActionBar(AppCompatActivity.java:99)
at com.ssnake.highday.MainActivity.initToolBar(MainActivity.java:23)
at com.ssnake.highday.MainActivity.onCreate(MainActivity.java:17)
at android.app.Activity.performCreate(Activity.java:5541)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1093)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2413)
************at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2509)
************at android.app.ActivityThread.access$900(ActivityThread.java:172)
************at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1308)
************at android.os.Handler.dispatchMessage(Handler.java:102)
************at android.os.Looper.loop(Looper.java:146)
************at android.app.ActivityThread.main(ActivityThread.java:5694)
************at java.lang.reflect.Method.invokeNative(Native Method)
************at java.lang.reflect.Method.invoke(Method.java:515)
************at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1291)
************at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1107)
************at dalvik.system.NativeStart.main(Native Method)

12-17 02:20:58.071 32073-32073/com.ssnake.highday I/Process﹕ Sending signal. PID: 32073 SIG: 9
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.12.2015, 23:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка setSupportActionBar(ToolBar) (Программирование Android):

Ошибка при смене toolbar - Программирование Android
Имеется тулбар &lt;android.support.v7.widget.Toolbar xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot; ...

Searchview в toolbar - Программирование Android
Доброго времени суток уважаемые форумчане. Нужна Ваша помощь в реализации поиска. Есть несколько фрагментов, и searchview в toolbar-е...

Кастомный Toolbar - Программирование Android
Как сделать свой Toolbar. В нем должны быть кнопка назад, меню, фотография и какой-то текст. На фотках думаю видна моя проблема, у меня...

Анимацию в toolbar - Программирование Android
Здравствуйте. Возникла задача Вот такой тулбар нужно сделать https://i.stack.imgur.com/Xivf1.gif Как такое можно...

Меню в Toolbar - Программирование Android
Здравствуйте, есть проблема не знаю как сделать подобное меню в Toolbar. Чтобы при нажатие одного item выпадал список. ...

Toolbar OverflowButton - Программирование Android
Создаю новый проект в АС, текст белый, а OverflowButton черная на 4.*, а на 5.* нормальная (белая), почему? ...

2
Mikalai
260 / 236 / 95
Регистрация: 11.01.2015
Сообщений: 663
17.12.2015, 01:13 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Ssnake707, в файле styles.xml замени тему от которой наследуется твоя тема. Например так:
XML
1
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
1
Ssnake707
8 / 8 / 6
Регистрация: 02.02.2015
Сообщений: 140
17.12.2015, 01:15  [ТС] #3
Mikalai, Вот я глупец, спасибо тебе большое, ты не представляешь как ты мне помог
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.12.2015, 01:15
Привет! Вот еще темы с ответами:

Toolbar для приложения - Программирование Android
делаю приложение, требуется сделать шапку тулбар. может кто пример дать? или разъяснить как реализовать, изображенное на картинке

OnLongClick на toolbar menu - Программирование Android
Как сделать чтобы toolbar menu открывался не только на onClick, но еще и на onLongClick?

Toolbar с кастомным меню - Программирование Android
Здравствуйте! Как встроить свою View-шку вместо стандартного меню в Toolbar? Мне нужно вверх добавить несколько кнопок, выровненных в...

Добавление элемента в Toolbar - Программирование Android
хочу добавить один элемент в тулбар, но вместо этого в тулбаре только три точки (кнопка overflow) при нажатии на которую выпадает вариант...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru