Tôi mới sử dụng Appdevelopment và cố gắng thay đổi Theme của ứng dụng trong Android Studio 1.4.1 (mới nhất) trên Windows 10 x64, nhưng tôi luôn nhận được ngoại lệ, dưới đây là những gì tôi làm: (vâng, bây giờ tôi đã có rất nhiều câu hỏi, nhưng tôi không thể tìm thấy một câu trả lời)Hiển thị vấn đề khi thay đổi chủ đề
- Bắt đầu dự án (tên: TEST)
- Đối với điện thoại và máy tính bảng (min SDK:. API 15 Android 4.0. 3 IceCreamSandwich)
- Chọn Hoạt động trống (tên: MainActivity)
- Đi tới activity_main.xml -> xem thiết kế
- Chọn Nexus 4; API 23; Holo Light/Holo Dark/Ánh sáng vật liệu/Chất liệu Tối; (API và điện thoại không quan trọng => cố gắng rất nhiều)
- EXCEPTION:
Rendering vấn đề
Các lớp sau đây không thể được khởi tạo:
- android .support.design.widget.CoordinatorLayout
- android.support.design.widget.AppBarLayout
Mẹo: [...]
Ngoại lệ chi tiết
java.lang.IllegalArgumentException: Bạn cần phải sử dụng một chủ đề Theme.AppCompat (hoặc hậu duệ) với thư viện thiết kế . tại android.support.design.widget.ThemeUtils.checkAppCompatTheme (ThemeUtils.java:34) tại android.support.design.widget.CoordinatorLayout. (CoordinatorLayout.java:178) tại android.support.design.widget.CoordinatorLayout . (CoordinatorLayout.java:172) tại sun.reflect.NativeConstructorAccessorImpl.newInstance0 (Native Method) tại sun.reflect.NativeConstructorAccessorImpl.newInstance (NativeConstructorAccessorImpl.java:62) tại sun.reflect.DelegatingConstructorAccessorImpl.newInstance (DelegatingConstructorAccessorImpl.java : 45) tại java.lang.reflect.Constructor.newInstance (Constructor.java:422) tại org.jetbrains.android.uipreview.ViewLoader.createNewInstance (ViewLoader.java:458) tại org.jetbrains.android.uipreview .ViewLoader.loadClass (ViewLoader.java:170) tại org.jetbrains.android.uipreview.ViewLoader.loadView (ViewLoader.java:103) tại com.android.tools.idea.rendering.LayoutlibCallbackImpl.loadView (LayoutlibCallbackImpl.java : 190) tại android.view.BridgeInflater.loadCustomView (BridgeInflater.java:218) tại android.view.BridgeInflater.createViewFromTag (BridgeInflater.java:145) tại android.view.LayoutInflater.createViewFromTag (LayoutInflater.java:704) tại android.view.LayoutInflater.inflate (LayoutInflater.java:492) tại android.view.LayoutInflater.inflate (LayoutInflater.java:394) tại com.android.layoutlib.bridge.impl.RenderSessionImpl.inflate (RenderSessionImpl .java: 223) tại com.android.layoutlib.bridge.Bridge.createSe ssion (Bridge.java:426) tại com.android.ide.common.rendering.LayoutLibrary.createSession (LayoutLibrary.java:350) tại com.android.tools.idea.rendering.RenderTask $ 2.compute (RenderTask.java WEBC10) tại com.android.tools.idea.rendering.RenderTask $ 2.compute (RenderTask. java: 498) tại com.intellij.openapi.application.impl.ApplicationImpl.runReadAction (ApplicationImpl.java:888) tại com.android.tools.idea.rendering.RenderTask.createRenderSession (RenderTask.java:498) tại com.android.tools.idea.rendering.RenderTask.access $ 600 (RenderTask.java:72) tại com.android.tools.idea.rendering.RenderTask $ 3.call (RenderTask.java:610) tại com.android. tools.idea.rendering.RenderTask $ 3.call (RenderTask.java:607) tại com.android.tools.idea.rendering.RenderService.runRenderAction (RenderService.java:366) at com .android.tools.idea.rendering.RenderTask.render (RenderTask.java:607) tại com.android.tools.idea.rendering.RenderTask.render (RenderTask.java:629) tại com.intellij.android.designer .designSurface.AndroidDesignerEditorPanel $ 6.run (AndroidDesignerEditorPanel.java:480) tại com.intellij.util.ui.update.MergingUpdateQueue.execute (MergingUpdateQueue.java:320) tại com.intellij.util.ui.update.MergingUpdateQueue. thực hiện (MergingUpdateQueue.java:310) tại com.intellij.util.ui.update.MergingUpdateQueue $ 2.run (MergingUpdateQueue.java:254) tại com.intellij.util.ui.update.MergingUpdateQueue.flush (MergingUpdateQueue.java : 269) tại com.intellij.util.ui.update.MergingUpdateQueue.flush (MergingUpdateQueue.java:227) tại com.intellij.util.ui.update.MergingUpdateQu eue.run (MergingUpdateQueue.java:217) tại com.intellij.util.concurrency.QueueProcessor.runSafely (QueueProcessor.java:238) tại com.intellij.util.Alarm $ Yêu cầu $ 1.run (Alarm.java:351) tại java.util.concurrent.Executors $ RunnableAdapter.call (Executors.java WEBC11) tại java.util.concurrent.FutureTask.run (FutureTask.java:266) tại java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1142) tại java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:617) tại java.lang.Thread.run (Thread.java:745)
AndroidManifest.xml: (premade)
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="de.minding.test" >
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:theme="@style/AppTheme.NoActionBar" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
MainActivity.java: (premade)
package de.minding.test;
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.View;
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.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
});
}
@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
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
activity_main.xml: (premade)
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
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" android:layout_width="match_parent"
android:layout_height="match_parent" android:fitsSystemWindows="true"
tools:context=".MainActivity">
<android.support.design.widget.AppBarLayout android:layout_height="wrap_content"
android:layout_width="match_parent" android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar android:id="@+id/toolbar"
android:layout_width="match_parent" android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary" app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.AppBarLayout>
<include layout="@layout/content_main" />
<android.support.design.widget.FloatingActionButton android:id="@+id/fab"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="bottom|end" android:layout_margin="@dimen/fab_margin"
android:src="@android:drawable/ic_dialog_email" />
</android.support.design.widget.CoordinatorLayout>
là gì vậy ?? Tôi sử dụng các công cụ premade và nó không hoạt động? -_- Không mát mẻ.
Xin vui lòng trợ giúp!-Minding
Lấy lỗi tương tự –
Yeah, tôi đã tìm kiếm Google và có thể tin được rất nhiều thiếu sót xé. Loại buồn. _-Minding_ – Minding