SO 스레드 here 및 Android 블로그 게시물 here을 읽은 후 AppCompat V7 : 21에 새로 추가 된 도구 모음 기능을 사용해야합니다. 내가 exacctly 내 레이아웃에 블로그 게시물에서 도구 모음 조각을 복사 :AppCompat v7 Toolbar "Error inflating class class <unknown>"
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.blabla.PrefActivity}: android.view.InflateException: Binary XML file line #8: Error inflating class <unknown>
흥미롭게도, 내가이 줄을 제거하는 경우 : 안드로이드 :
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.v7.widget.Toolbar <- Line 8
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:minHeight="?attr/actionBarSize"
app:theme="@style/ThemeOverlay.AppCompat.ActionBar" />
</LinearLayout>
문제는 내가 얻을 수 있다는 것입니다?의 minHeight = "를 ATTR/actionBarSize "
작동합니다. 문제는 프로젝트 의존성 때문이 아닙니다. 그것은 내가 액세스 할 수없는 것 같습니다? actionBarSize 또는 colorPrimary와 같은 attr 요소
AppCompat 종속성을 이미 추가했다고 말할 필요는 없습니다. 그리고 활동은 PreferenceActivity에서 상속됩니다. 임의의 기준으로 문제를 해결하기 위해보고
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:support-v4:21.0.3'
compile 'com.android.support:appcompat-v7:21.0.3'
}
here 및 here명 : 여기 내 Gradle을합니다. 하지만 지난 2 일 동안 무작위로 작동하지 않았습니다.
편집 :
여기 내 활동 (? ATTR /) 속성의 사용
public class PrefActivity extends PreferenceActivity {
private Toolbar mToolbar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ViewGroup root = (ViewGroup) findViewById(android.R.id.content);
LinearLayout content = (LinearLayout) root.getChildAt(0);
LinearLayout toolbarContainer = (LinearLayout) View.inflate(this, R.layout.activity_prefs, null);
root.removeAllViews();
toolbarContainer.addView(content);
root.addView(toolbarContainer);
mToolbar = (Toolbar) toolbarContainer.findViewById(R.id.toolbar);
selectResource();
mToolbar.setNavigationIcon(R.drawable.abc_ic_ab_back_mtrl_am_alpha);
mToolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
}
완전한 레이아웃 파일을 표시 하시겠습니까? –
'android : minHeight = "? android : attr/actionBarSize"' – VipulKumar
@RobinDijkhof를 사용해보세요! – abedfar