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

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

ただいまの
回答率

91.35%

  • Android

    5166questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

  • XML

    526questions

    XMLは仕様の1つで、マークアップ言語群を構築するために使われています。

Androidでレイアウトを共通化してXMLを外出ししたい

解決済

回答 2

投稿 2017/11/27 10:49

  • 評価
  • クリップ 0
  • VIEW 51

amery

score 21

layout_a.xml と layout_b.xmlがあり、
それの共通部分が
<TextVew・・・
<ImageView・・・
その他同階層に複数のViewあり。
といった構造で作られている状態です。

この共通部分をincludeで外出し(common.xml)として定義したいのですが、

1行目は
<?xml version="1.0" encoding="utf-8"?>
2行目以降は共通部の
<TextVew・・・
<ImageView・・・
という風に書くと、
Android Studioが multiple root tags エラーを出します。
LinearLayoutなどでくくればいいとは思うのですが、
それだとlayout_widthやorientationを設定しなければならず、他に影響があるかどうか不安です。
できれば何もしない状態で共通化したいです。
「何もしないレイアウト」というものは存在しないのでしょうか?

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

checkベストアンサー

0

結論から言いますと、存在しません。
レイアウトファイルは、たとえincludeする部品であっても、そのレイアウトファイル単体でレイアウトが完成しているものになります。

「何もしない状態で共通化」とおっしゃっていますが、それはつまりrootを定義せずにViewのレイアウトファイルを作成することになります。

rootがなければ、レイアウトファイルで指定したViewが一意に定まらず、他のViewにincludeした時に初めてViewの見た目が決定することになります。

それだと、このcommon.xmlを見た人が、そのファイルを見ただけではどのようなviewが描かれるのかを判断することができません。

投稿 2017/11/27 17:51

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

共通部分を別ファイルにするよりは、共通しない部分をカスタムViewかFragmentとして実装するのがベターな気がします。

投稿 2017/11/27 16:17

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

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

ただいまの回答率

91.35%

関連した質問

  • 解決済

    AndroidのListViewのスクロールバーを表示させないようにしたい

    ListViewのスクロールバーを見えないようにする方法が知りたいです。 ScrollViewのスクロールバーの隠し方はわかっているのですがListViewでの方法がわかりません

  • 受付中

    Android画像が表示できない

    自作APIから問題データを取得し、その問題を表示するアプリを作成しています。 文字のみの場合の問題表示は成功し、画像があった場合の問題を表示しようとした時に不具合が起きました。

  • 受付中

    Android 開発 レイアウト XML Java

    Android StudioでAndroidアプリ作ってます。 XMLで、textViewを二つ表示させています。     <TextView         android:i

  • 解決済

    Android CardRecyclerView表示されない

    Androidアプリを開発中です。 その中でこちらのcardslibライブラリを使用しています。 実際にはFragmentの中でCardRecyclerViewを以下のように実装し

  • 解決済

    Android Webリンク設定について

    Webリンク方法をご教授下さい。 下記ご覧ください。 ___________ ublic class SamplePagerAdapter extends PagerAdapt

  • 受付中

    イメージビュウの大きさを変えたい

    アンドロイドのアプリでイメージびゅうのサイズを変えたいです。 下のようなコードを書いたのですが馬鹿なんで微妙にわかっていません。 長さはint型のlingsSizeで変えたいです

  • 解決済

    ボタンとリストビュー

    リストビューとボタンのあるUIを作っています。 リストビューにアクション(OnItemClick)をつけた所、ボタンが動かなくなり、リストビューも表示がおかしくなりました。 XML

  • 解決済

    androidのボタンに枠線をつける方法

    androidのボタンに枠線をつけたく、下記のようなコードを書いているのですが、枠線がよくわからずに困っています。 サイトを見ていると、res/drawable/drawable_

同じタグがついた質問を見る

  • Android

    5166questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

  • XML

    526questions

    XMLは仕様の1つで、マークアップ言語群を構築するために使われています。