3

У меня есть ошибка, когда я расширяю ActionBarActivity. Если я продляю Activity ошибок нет.Приложение сбой при расширении ActionBarActivity

Дело в моих других действиях прекрасно работает. Во-первых, я думал, что это потому, что моя предыдущая деятельность заключалась в намерениях. Но даже без него приложение рушится.

Вот мой код:

import android.support.v7.app.ActionBarActivity; 

import android.os.Bundle; 

public class FullscreenActivity extends ActionBarActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_fullscreen); 
    } 
} 

EDIT: и результат бревен:

09-21 18:21:39.413: E/AndroidRuntime(26944): FATAL EXCEPTION: main 
09-21 18:21:39.413: E/AndroidRuntime(26944): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.testlfm/com.example.testlfm.FullscreenActivity}: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity. 
09-21 18:21:39.413: E/AndroidRuntime(26944): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2308) 
09-21 18:21:39.413: E/AndroidRuntime(26944): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2358) 
09-21 18:21:39.413: E/AndroidRuntime(26944): at android.app.ActivityThread.access$600(ActivityThread.java:153) 
09-21 18:21:39.413: E/AndroidRuntime(26944): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1247) 
09-21 18:21:39.413: E/AndroidRuntime(26944): at android.os.Handler.dispatchMessage(Handler.java:99) 
09-21 18:21:39.413: E/AndroidRuntime(26944): at android.os.Looper.loop(Looper.java:137) 
09-21 18:21:39.413: E/AndroidRuntime(26944): at android.app.ActivityThread.main(ActivityThread.java:5227) 
09-21 18:21:39.413: E/AndroidRuntime(26944): at java.lang.reflect.Method.invokeNative(Native Method) 
09-21 18:21:39.413: E/AndroidRuntime(26944): at java.lang.reflect.Method.invoke(Method.java:511) 
09-21 18:21:39.413: E/AndroidRuntime(26944): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:795) 
09-21 18:21:39.413: E/AndroidRuntime(26944): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:562) 
09-21 18:21:39.413: E/AndroidRuntime(26944): at dalvik.system.NativeStart.main(Native Method) 
09-21 18:21:39.413: E/AndroidRuntime(26944): Caused by: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity. 
09-21 18:21:39.413: E/AndroidRuntime(26944): at android.support.v7.app.ActionBarActivityDelegate.onCreate(ActionBarActivityDelegate.java:102) 
09-21 18:21:39.413: E/AndroidRuntime(26944): at android.support.v7.app.ActionBarActivityDelegateICS.onCreate(ActionBarActivityDelegateICS.java:58) 
09-21 18:21:39.413: E/AndroidRuntime(26944): at android.support.v7.app.ActionBarActivity.onCreate(ActionBarActivity.java:98) 
09-21 18:21:39.413: E/AndroidRuntime(26944): at com.example.testlfm.FullscreenActivity.onCreate(FullscreenActivity.java:36) 
09-21 18:21:39.413: E/AndroidRuntime(26944): at android.app.Activity.performCreate(Activity.java:5104) 
09-21 18:21:39.413: E/AndroidRuntime(26944): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080) 
09-21 18:21:39.413: E/AndroidRuntime(26944): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2262) 
09-21 18:21:39.413: E/AndroidRuntime(26944): ... 11 more 
+0

Какая у вас ошибка? Опубликуйте стек. –

ответ

9

По ошибке вы Отвечали: «Вы должны использовать Theme.AppCompat тема (или потомок) с этой деятельностью ». Вы должны использовать AppCompat библиотеку как проект библиотеки, в этом случае вы увидите доступные темы под рес/значений в этом проекте

+0

Можете ли вы уточнить? –

+0

Найдите его! Спасибо, я добавляю тему в AndroidManifest.xml –

+0

Пожалуйста, отметьте мой ответ как правильно – JulianSymes

3
<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.theredpill.myfirstapp" 
android:versionCode="1" 
android:versionName="1.0" > 
<uses-sdk 
    android:minSdkVersion="7" 
    android:targetSdkVersion="18" /> 
<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/Theme.AppCompat.Light" > 
    <activity 
     android:name="com.theredpill.myfirstapp.MainActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity 
     android:name="com.theredpill.myfirstapp.DisplayMessageActivity" 
     android:label="@string/title_activity_display_message" 
     android:parentActivityName="com.example.myfirstapp.MainActivity" > 
     <meta-data 
      android:name="android.support.PARENT_ACTIVITY" 
      android:value="com.example.myfirstapp.MainActivity" /> 
    </activity> 
</application> 
</manifest> 
0

Если нет папки активов в проекте создать один под ЦСИ /главный. Скопируйте файл шрифта в папку с ресурсами.

в вашем файле java можно использовать следующим образом: // Путь к шрифту Строка fontPath = "MyCustomFOnt.TTF";

EditText txtCustom = (EditText) findViewById(R.id.editor1); 
    // Loading Font Face 
    Typeface tf = Typeface.createFromAsset(getAssets(), fontPath); 
    // Applying font 
    txtCustom.setTypeface(tf); 
0

У меня была такая же проблема, и я попробовал целую кучу вещей (темы, импортирующие внешние банки appcompat и т. Д.).
Единственный помог мне:
1) вручную скопируйте файл поддержки android-v4.jar и android-support-v7-appcompat.jar в папку lib проекта;
2) щелкните правой кнопкой мыши по проекту -> Свойства -> Библиотеки -> Добавить JAR (не внешние банки) -> выберите банки из папки lib (которые мы скопировали на шаге 1) -> Заказ и экспорт крана -> Снимите отметку со старого поддерживать библиотеки и проверять новые, которые мы только что добавили. -> ОК.

Смежные вопросы