Androidの常用配置のLirear Layoutの簡易計算機


コンベヤー?ドア 𗺷 輪子のコラム 𗺷 転載は明記してください 𗺷 http://blog.csdn.net/leverage_1229
1レイアウト(Layout)
        簡単に言うと、Activityとはウィンドウ全体を覆うか、または他のウィンドウに浮遊する相互作用インターフェースのことです.一つのアプリケーションでは通常、複数のActivityで構成されていますが、Android Manifest.xmlのうちの1つのマスターを指定するActivityは、以下のように設定されています.
<activity android:label="@string/app_name" android:name=".MainActivity">
	<intent-filter>
		<action android:name="android.intent.action.MAIN" />
		<category android:name="android.intent.category.LAUNCHER" />
	</intent-filter>
</activity>
        様々なインターフェーススタイルに適応するために、Androidは5つのレイアウトを提供しています.
Frame Layout(フレームレイアウト)、LINE Layout(リニアレイアウト)、RelativeLayout(相対レイアウト)、Table Layout(テーブルレイアウト)、Absoluut Layout(絶対レイアウト)など.
        以上の5つのレイアウトを利用して、私たちは携帯の画面に様々なコントロールを自由に配置することができます.
2 Androidビューの作成        Androidシステムでは、どの可視化コントロールもAndroid.view.Viewから継承されています.開発者は2つの方法でビューを作成することができます.
(1)XML方式を使用してViewの関連属性を設定し、これらのViewをロードする.
(2)Javaコードを完全に使用してViewを作成します.
3 XMLレイアウトファイルを使用してビューを定義する(1)xmlレイアウトファイルは、Androidシステムでビューを定義するための一般的な方法であり、すべてのレイアウトファイルは、res/layoutディレクトリに含まれていなければならない.xmlレイアウトを定義する命名と定義の注意事項は以下の通りです.
        xmlレイアウトファイルはxmlファイル名で終了しなければなりません.名前はjava規格に適合していなければなりません.
        各xmlレイアウトファイルのルートノードは、任意のコントロールラベルとすることができます.
        xmlレイアウトファイルのルートノードは、アンディロイドを含む名前空間でなければなりません.名前空間はxmlnsでなければなりません.android=http://schemas.android.com/apk/res/android
        xmlファイルレイアウトのタグに指定されているidは、Rファイルに保存されています.アンディロイド:id=「@+id/ラベル名」というフォーマットが必要です.
        各ビューのIDはRクラスで対応する変数を生成しますので、ビューIDの値はjava仕様に適合する必要があります.
(2)xmlレイアウトファイルを使用する場合は、通常、Ocreate方法でset ContentViewを使用して指定されたxmlレイアウトファイルをロードする必要があります.
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        ...
    }
(3)xmlレイアウトファイルを取得するには、注意が必要です.
        findView ById()メソッドを使用する前にsetContentView()メソッドを呼び出してxmlファイルをロードする必要があります.そうでないとレイアウトファイルに異常情報が投げられます.つまり、findView ById()方法はset ContentView()方法が実行された後に使用されます.すべてのxmlファイルレイアウトファイルのビューIDは、Rクラスで対応する変数を生成します.
4 Androidの長さの単位(1)px:スクリーンの実際のピクセル.例えば、320*480のスクリーンは横に320のピクセルがあり、縦に480のピクセルがあります.
(2)dp:画面の物理サイズ、密度に関する画素.サイズは1インチの1/72です.
(3)sp:密度、目盛に関係のない画素.dpと似ていますが、ユーザのフォントサイズの優先項目に応じてスケーリングができます.
5 Androidレイアウトでよく使われる属性(1)layout_親コントロールに対するコントロールのエッジの余白を設定します.
(2)ラyout_paddingはコントロールの内容のコントロールのエッジに対する余白を設定します.
(3)android:gravity Viewコンポーネントの配置方法
(4)android:layout_gravity Continerコンポーネントの配置方式を設定します.
6直線レイアウト(Lineear Layout)(1)線形レイアウトは、最も一般的なレイアウトの線形レイアウトであり、xmlファイルでは「Linear Layout」を使用して定義されています.
(2)直線レイアウトは、水平方向と垂直方向のレイアウトに分けられ、方向は、horizontalとverticalの2つの方向を持つことができる.
(3)<Linear Layout>ラベルには重要な属性gravityがあり、この属性はレイアウト内のビューの位置を制御するために用いられ、複数の値を設定する場合は124を使用して分離する必要がある.
(4)android:layout_widthとandroid_ラyout_ヘイト属性
        wrap_コンテント小包の内容
        fill_親コントロールを満たします.
        matchparentとfill_parent同様、Android 2.2でmatch_を起動します.parent、fill_は使いませんparent
(5)android:layout_weight属性
        線形レイアウトの複数のビューの重要度の割り当てを設定します. 
        すべてのビューにはラyout_があります.weight値はデフォルトではゼロとなります.つまり、どれぐらいの大きさの表示が必要なのかは画面の空間を占めています.ゼロ以上の値を付与すると、親ビューの利用可能な空間を分割します.分割サイズは、各ビューのlayout_に特に依存します.weight値とこの値は現在のスクリーンレイアウト全体のlayout_weight値と他のビュー画面レイアウトのlayout_weight値に占める比率によって異なります.      (6)直線レイアウト事例(アナログ計算機界面)
aケースコードの陳列
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
	android:layout_height="match_parent"
	android:background="#FFFFFF">
	<LinearLayout android:orientation="horizontal"
		android:layout_width="match_parent"
		android:layout_height="wrap_content">
    	<EditText
        	android:id="@+id/msg"
        	android:layout_width="match_parent"
        	android:layout_height="wrap_content" />
	</LinearLayout>
	<LinearLayout android:orientation="horizontal"
		android:layout_width="match_parent"
		android:layout_height="wrap_content">
		<Button android:layout_width="match_parent"
			android:layout_height="wrap_content"
			android:text="mc"
			androud:layout_weight="1" />
		<Button android:layout_width="match_parent"
			android:layout_height="wrap_content"
			android:text="m+"
			androud:layout_weight="1" />
		<Button android:layout_width="match_parent"
			android:layout_height="wrap_content"
			android:text="m-"
			androud:layout_weight="1" />
		<Button android:layout_width="match_parent"
			android:layout_height="wrap_content"
			android:text="mr"
			androud:layout_weight="1" />
	</LinearLayout>
	<LinearLayout android:orientation="horizontal"
		android:layout_width="match_parent"
		android:layout_height="wrap_content">
		<Button android:layout_width="match_parent"
			android:layout_height="wrap_content"
			android:text="C"
			androud:layout_weight="1" />
		<Button android:layout_width="match_parent"
			android:layout_height="wrap_content"
			android:text="+/-"
			androud:layout_weight="1" />
		<Button android:layout_width="match_parent"
			android:layout_height="wrap_content"
			android:text="/"
			androud:layout_weight="1" />
		<Button android:layout_width="match_parent"
			android:layout_height="wrap_content"
			android:text="*"
			androud:layout_weight="1" />
	</LinearLayout>
	<LinearLayout android:orientation="horizontal"
		android:layout_width="match_parent"
		android:layout_height="wrap_content">
		<Button android:layout_width="match_parent"
			android:layout_height="wrap_content"
			android:text="7"
			androud:layout_weight="1" />
		<Button android:layout_width="match_parent"
			android:layout_height="wrap_content"
			android:text="8"
			androud:layout_weight="1" />
		<Button android:layout_width="match_parent"
			android:layout_height="wrap_content"
			android:text="9"
			androud:layout_weight="1" />
		<Button android:layout_width="match_parent"
			android:layout_height="wrap_content"
			android:text="-"
			androud:layout_weight="1" />
	</LinearLayout>
	<LinearLayout android:orientation="horizontal"
		android:layout_width="match_parent"
		android:layout_height="wrap_content">
		<Button android:layout_width="match_parent"
			android:layout_height="wrap_content"
			android:text="4"
			androud:layout_weight="1" />
		<Button android:layout_width="match_parent"
			android:layout_height="wrap_content"
			android:text="5"
			androud:layout_weight="1" />
		<Button android:layout_width="match_parent"
			android:layout_height="wrap_content"
			android:text="6"
			androud:layout_weight="1" />
		<Button android:layout_width="match_parent"
			android:layout_height="wrap_content"
			android:text="+"
			androud:layout_weight="1" />
	</LinearLayout>
	<LinearLayout android:orientation="horizontal"
		android:layout_width="match_parent"
		android:layout_height="wrap_content">
		<LinearLayout android:orientation="vertical"
			android:layout_width="wrap_content"
			android:layout_height="wrap_content"
			android:layout_weight="3">
			<LinearLayout android:orientation="horizontal"
				android:layout_width="match_parent"
				android:layout_height="wrap_content">
				<Button android:layout_width="match_parent"
					android:layout_height="wrap_content"
					android:text="1"
					androud:layout_weight="1" />
				<Button android:layout_width="match_parent"
					android:layout_height="wrap_content"
					android:text="2"
					androud:layout_weight="1" />
				<Button android:layout_width="match_parent"
					android:layout_height="wrap_content"
					android:text="3"
					androud:layout_weight="1" />
			</LinearLayout>
			<LinearLayout android:orientation="horizontal"
				android:layout_width="match_parent"
				android:layout_height="wrap_content">
				<Button android:layout_width="0px"
					android:layout_height="wrap_content"
					android:text="0"
					androud:layout_weight="2" />
				<Button android:layout_width="0px"
					android:layout_height="wrap_content"
					android:text="."
					androud:layout_weight="1" />
			</LinearLayout>
		</LinearLayout>
		<LinearLayout android:orientation="horizontal"
			android:layout_width="wrap_content"
			android:layout_height="match_parent"
			android:layout_weight="1">
			<Button android:layout_width="match_parent"
				android:layout_height="match_parent"
				android:text="="
				androud:layout_weight="1" />
		</LinearLayout>
	</LinearLayout>
</LinearLayout>
bケース効果の展示