質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
OS

OS(オペレーティングシステム)は、システムソフトウェアの一種であり、一般的に、ハードウェアを直接的に管理・操作する最も中心的な機能を有するソフトウェアがオペレーティングシステムとして呼ばれます。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Q&A

解決済

1回答

396閲覧

【AndroidStudio】Android7.1.1では動くが6.0にすると動かない【InflateException】

HW_

総合スコア18

OS

OS(オペレーティングシステム)は、システムソフトウェアの一種であり、一般的に、ハードウェアを直接的に管理・操作する最も中心的な機能を有するソフトウェアがオペレーティングシステムとして呼ばれます。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

0グッド

1クリップ

投稿2017/12/08 02:57

編集2017/12/08 05:18

###前提・実現したいこと
AndroidStudioで開発しているのですが、エミュレーターをAndroid OS 7.1.1で動かしていたのですが、使用環境が6.0なので6.0に変更したところ、エラーを出し動かなくなってしまいました。プロジェクトを作る段階では6.0を選択して作成しています。

###発生している問題・エラーメッセージ
MainMenuActivity(起動時のアクティビティ)で、setContentViewを行っている部分でエラーが発生しています。
どういったことが原因でしょうか。
エラー箇所は#0(0行目)と書かれていますが0行目とはどこを指すのでしょうか。

E/AndroidRuntime: FATAL EXCEPTION: main Process: com.example.root.qrsystemtest2, PID: 3037 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.root.qrsystemtest2/com.example.root.qrsystemtest2.MainMenuActivity}: android.view.InflateException: Binary XML file line #0: Binary XML file line #0: Error inflating class Button at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) at android.app.ActivityThread.-wrap11(ActivityThread.java) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:148) at android.app.ActivityThread.main(ActivityThread.java:5417) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) Caused by: android.view.InflateException: Binary XML file line #0: Binary XML file line #0: Error inflating class Button at android.view.LayoutInflater.inflate(LayoutInflater.java:539) at android.view.LayoutInflater.inflate(LayoutInflater.java:423) at android.view.LayoutInflater.inflate(LayoutInflater.java:374) at android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java:287) at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:139) at com.example.root.qrsystemtest2.MainMenuActivity.onCreate(MainMenuActivity.java:23) at android.app.Activity.performCreate(Activity.java:6237) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)  at android.app.ActivityThread.-wrap11(ActivityThread.java) 

###該当のソースコード
MainMenuActivity

java

1protected void onCreate(Bundle savedInstanceState) { 2 super.onCreate(savedInstanceState); 3 setContentView(R.layout.activity_main_menu); **//エラー箇所** 4 setTitle("メニュー"); //ヘッダータイトル 5 for(int i = 0; i < ButtonNo; i++) { //ボタン取得ループ 6 String ButtonTag = "button" + i; //ボタンのid用文字列を動的に設定 7 int buttonId = getResources().getIdentifier(ButtonTag, "id", getPackageName()); //id取得 8 btn[i] = (Button) findViewById(buttonId); //idからボタンを取得 9 final int finalI = i; 10 btn[i].setOnClickListener(new View.OnClickListener() { //ボタン押下後処理 11 @Override 12 public void onClick(View view) { 13 WindowChange(finalI); //画面遷移の関数をボタン番号を引数に呼び出し 14 } 15 }); 16 } 17 }

activity_main_menu.xml

xml

1<?xml version="1.0" encoding="utf-8"?> 2<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 xmlns:app="http://schemas.android.com/apk/res-auto" 4 xmlns:tools="http://schemas.android.com/tools" 5 android:layout_width="match_parent" 6 android:layout_height="match_parent" 7 tools:context="com.example.root.qrsystemtest2.MainMenuActivity"> 8 9 <Button 10 android:id="@+id/button0" 11 android:background="@drawable/button_rayout" 12 android:layout_width="300dp" 13 android:layout_height="wrap_content" 14 android:text="@string/syoki_button" 15 app:layout_constraintBottom_toBottomOf="parent" 16 app:layout_constraintLeft_toLeftOf="parent" 17 app:layout_constraintRight_toRightOf="parent" 18 app:layout_constraintTop_toTopOf="parent" 19 app:layout_constraintVertical_bias="0.058" /> 20 21 <Button 22 android:id="@+id/button1" 23 android:background="@drawable/button_rayout" 24 android:layout_width="300dp" 25 android:layout_height="wrap_content" 26 android:text="@string/syukka_button" 27 app:layout_constraintBottom_toBottomOf="parent" 28 app:layout_constraintLeft_toLeftOf="parent" 29 app:layout_constraintRight_toRightOf="parent" 30 app:layout_constraintTop_toTopOf="parent" 31 app:layout_constraintVertical_bias="0.228" /> 32 33 <Button 34 android:id="@+id/button2" 35 android:background="@drawable/button_rayout" 36 android:layout_width="300dp" 37 android:layout_height="wrap_content" 38 android:text="@string/kannsei_button" 39 app:layout_constraintBottom_toBottomOf="parent" 40 app:layout_constraintLeft_toLeftOf="parent" 41 app:layout_constraintRight_toRightOf="parent" 42 app:layout_constraintTop_toTopOf="parent" 43 app:layout_constraintVertical_bias="0.36" /> 44 45 <Button 46 android:id="@+id/button3" 47 android:background="@drawable/button_rayout" 48 android:layout_width="300dp" 49 android:layout_height="wrap_content" 50 android:text="@string/syusei_button" 51 app:layout_constraintBottom_toBottomOf="parent" 52 app:layout_constraintLeft_toLeftOf="parent" 53 app:layout_constraintRight_toRightOf="parent" 54 app:layout_constraintTop_toTopOf="parent" 55 app:layout_constraintVertical_bias="0.55" /> 56 57 <Button 58 android:id="@+id/button4" 59 android:background="@drawable/button_rayout" 60 android:layout_width="300dp" 61 android:layout_height="wrap_content" 62 android:text="@string/sousin_button" 63 app:layout_constraintBottom_toBottomOf="parent" 64 app:layout_constraintLeft_toLeftOf="parent" 65 app:layout_constraintRight_toRightOf="parent" 66 app:layout_constraintTop_toTopOf="parent" 67 app:layout_constraintVertical_bias="0.717" /> 68 69 <Button 70 android:id="@+id/button5" 71 android:background="@drawable/button_rayout" 72 android:layout_width="300dp" 73 android:layout_height="wrap_content" 74 android:text="@string/rireki_button" 75 app:layout_constraintBottom_toBottomOf="parent" 76 app:layout_constraintLeft_toLeftOf="parent" 77 app:layout_constraintRight_toRightOf="parent" 78 app:layout_constraintTop_toTopOf="parent" 79 app:layout_constraintVertical_bias="0.853" /> 80 81</android.support.constraint.ConstraintLayout> 82

以下はDrawableに追加したボタンレイアウト用のxmlファイルです
button_layout.xml

xml

1<?xml version="1.0" encoding="utf-8"?> 2<shape xmlns:android="http://schemas.android.com/apk/res/android" 3 android:shape="rectangle"> 4 5 <!-- 枠線 width:線の幅、color:線の色 --> 6 <stroke 7 android:width="2dp" 8 android:color="#34465d" /> 9 10</shape>

###追記
activity_main_menu.xmlで、ボタンの背景にdrawableを指定している部分を消すとエラーは消えました。下記の部分です。

android:background="@drawable/button_rayout"

drawableを背景に設定するやり方がダメなのでしょうか。
それともdrawableのxmlファイルの書き方に何か問題があるのでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

aja

2017/12/08 03:25

ConstraintLayout !
guest

回答1

0

ベストアンサー

ドキュメントを見る限り正しい。
drawable/button_rayoutとbutton_layout.xml は質問の書き間違え?(lとr)
drawableはres/drawable/配下にある必要があるんだけどそれも大丈夫だよね?
ConstraintLayoutではmatch_parentを使用できません。
これくらいしか思いつかないです。

投稿2017/12/17 22:44

編集2017/12/17 23:27
tignear

総合スコア260

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

HW_

2017/12/18 07:38

lとrは書き間違いでした、失礼しました。 res/drawableに置いてあるはず...と思ってエクスプローラーから確認してみたら、drawable(v24)というフォルダに入っていました。 なぜそこに入っていたのか謎なのですが、drawableに同じファイルを作り直したところ正常に動きました! 非常に助かりました、ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問