LinearLayoutに基づいて複合コンポーネントを開発しているとしましょう。したがって、次のようなクラスを作成します。
public class SomeView extends LinearLayout {
public SomeView(Context context, AttributeSet attrs) {
super(context, attrs);
setOrientation(LinearLayout.VERTICAL);
View.inflate(context, R.layout.somelayout, this);
}
}
のLinearLayout
ルートとして使用する場合somelayout.xml
、追加のビューレベルがあるため、マージタグを使用します。
<?xml version="1.0" encoding="utf-8"?>
<merge xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Some text"
android:textSize="20sp"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Some other text"/>
</merge>
しかし、IDEの[プレビュー]タブでは、マージは常にFrameLayoutとして機能し、次のようなものが表示されます。
(それはAndroid Studioですが、Intellij IDEAも同じです。Eclipseについては知りません)
プレビューはレイアウトの開発を大幅にスピードアップします。一部のレイアウトについても、このような大きな助けを失うのは残念です。merge
特定のレイアウトでプレビューがタグを解釈する方法を指定する方法があるかもしれませんか?