[Android]レイアウトファイルでビューが表示されない・貼り付けできない場合の対処法

通常であれば、完成図(レイアウトファイル)はこのように表示されますが、

 

こんな感じになってしまって、画用紙上に

  • 画面上部のバーが表示されない
  • TextViewなどのビューも表示されない
  • さらには、パレット(Palette)からビューを貼り付けることもできない

状況になってしまう場合があります。

 

あるいは、こんな感じになってしまう(Basic Activityの場合)。

 

この場合の対処法です。

 

プロジェクト作成時にデフォルトでセットされるサポートライブラリのバージョンが原因ではないか

なぜ、このようなことが発生してしまうのかと言うと、プロジェクト作成時にデフォルトで設定されるサポートライブラリ(MainActivityの継承元であるAppCompatActivityを使うために必要)のバージョンが、

28.0.0-alpha3

となっているのですが、この記事を書いている2018年6月中旬時点での最新バージョンは

28.0.0-alpha1

となっており、「alpha3」が存在しない状態となっているのが原因ではないかと思われます。

 

これは、Google先生の公式リファレンスには何も記載されていないので、あくまで推測ですが。

 

【対策1】サポートライブラリのバージョンを存在しない「alpha3」から「alpha1」に変更する

ですので、このサポートライブラリのバージョンを、存在しないと思われる「28.0.0-alpha3」から、確実に存在している「28.0.0-alpha1」に変更してあげれば治ります。

アプリケーションレベル(モジュールレベル)のbuild.gradleファイルのdependenciesの部分を

これから

dependencies {
    ・・・・・・・・・
   implementation 'com.android.support:appcompat-v7:28.0.0-

alpha3

'
    ・・・・・・・・・・
}

これに変更して、

dependencies {
    ・・・・・・・・・
   implementation 'com.android.support:appcompat-v7:28.0.0-alpha1'
    ・・・・・・・・・・
}

「Sync now」してあげると、レイアウトファイルが正しく表示されるようになります。

「Basic Activity(マテリアルデザインの標準テンプレート)」を使っている場合は、マテリアルデザインのライブラリも変更してあげる必要があるので、以下のような感じになります。

 

 

【対策2】安定版を使いたい場合は、「compileSdkVersion」と「targetSdkVersion」も変更する

「対策1」の場合は、プレビュー版ですので、思わぬところで不具合が生じる可能性があるため、安定版でやりたいという場合もあるかと思います。

その場合、この記事を書いている時点での安定版の最新版が「27.1.1」ですので、

「28.0.0-alpha3」を

dependencies {
    ・・・・・・・・・
   implementation 'com.android.support:appcompat-v7:28.0.0-

alpha3

'
    ・・・・・・・・・・
}

「27.1.1」にすることに加えて、

dependencies {
    ・・・・・・・・・
   implementation 'com.android.support:appcompat-v7:27.1.1'
    ・・・・・・・・・・
}

同じアプリケーションレベルの「build.gradle」ファイルの上の方にある

  • compileSdkVersion
  • targetSdkVersion

の数字も変更してあげる必要があります。

 

いずれにしろ、「alpha」とついたプレビュー版に起因する話ですので、一過性のものかと思われますが、レイアウトファイルのビューが表示されない・ビューの貼付けが出来ないというトラブルに見舞われてしまった場合は、一度この方法を試して頂けるといいかもしれません。

(詳しくは下の動画で解説していますので、よろしければご覧ください)

アバター

北川 博之(きーぼー)

みんなのプログラミング by Telulu LLC代表 大阪府生まれ。京都大学経済学部経済学科卒業。 2000年より、日本生命保険、ニッセイアセットマネジメント、パトナム・インベストメンツ(米国)で、日本株トレーダー・アナリスト、経営企画、システム開発等の業務に従事。主に日本株の売買執行・投資分析、経営計画の策定、海外投資家向け日本株営業、社内トレーディングシステム及び経理システムの開発等を行う。 2016年、合同会社てるる設立。スマホアプリプログラマーとして「新感覚脳トレアプリ・記憶戦隊オボエルンジャー」「Meisoー1番シンプルなマインドフルネス瞑想アプリ」をはじめとした、メンタルヘルス・知育系アプリを中心に4タイトル・計8本(Android・iOS)をリリース。 2017年、自身のこれまでの社会人経験・プログラミング経験・子育て経験を基に、プログラミングを通じて人々の人生を豊かにして、未来に希望の持てる明るい社会の実現に貢献したいとの想いから、プログラミング完全初心者と挫折経験のある人を支援する「プログラミング挫折撲滅プロジェクト・みんなのプログラミング by Telulu LLC」を設立し、プログラミングサポーター活動と心理カウンセリング活動を開始。これまでに3,000名を超える方のプログラミング挫折撲滅をサポート。

こんな記事も読まれています

みんプロにかける想い

  1. プログラミングを通じて「やわらかい世の中」を作りたい(ぼくがプログラミング講座をやっている本当の理由②)

  2. プログラミングはみんなのもの!(プログラミングの醍醐味である「楽しさ」を伝えたい)

  3. トランプ政権2期目に起こるIT業界激震予想(前編:スマホの世界の構造問題に荒療治が行われる可能性)

  4. トランプ政権2期目に起こるIT業界激震予想(後編:ブロックチェーンによるインターネットの再民主化が行われる可能性)

  5. こんな無駄な苦労をするのはぼくで最後にしたい(ぼくがプログラミング講座をはじめたわけ)

みんプロ作成アプリ




みんプロ代表の黒歴史


TOP