▼Androidメモ▼
スライディングドロワー


スライディングドロワーを利用するプログラムを作成する。



リソース
「res/drawable-nodpi」に「handle_normal.png」を配置。

「res/drawable-nodpi」に「handle_pressed.png」を配置。

「res/drawable-nodpi」に「handle_focused.png」を配置。

「res/drawable-nodpi」に「handle.xml」を配置。
handle.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item 
        android:state_window_focused="false"
        android:state_enabled="true"
        android:drawable="@drawable/handle_normal" />
    <item 
        android:state_pressed="true"
        android:drawable="@drawable/handle_pressed" />
    <item 
        android:state_focused="true"
        android:state_enabled="true"
        android:drawable="@drawable/handle_focused"/>
    <item 
        android:state_enabled="true"
        android:drawable="@drawable/handle_normal" />
    <item 
        android:state_focused="true"
        android:drawable="@drawable/handle_focused" />
</selector> 
「res/layout」に「main.xml」を配置。
main.xml
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#FFFFFF">
    <TextView
        android:id="@+id/label1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="#000000"
        android:textSize="24px"
        android:text="SlidingDrawerEx"/>
    <SlidingDrawer
        android:id="@+id/slidingdrawer"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical"
        android:handle="@+id/handle"
        android:content="@+id/content">        
        <LinearLayout
            android:id="@id/handle"
            android:layout_width="fill_parent"
            android:layout_height="40px"
            android:background="@drawable/handle"/>
        <LinearLayout
            android:id="@id/content"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:background="#FFFFFF">
            <ImageView
                android:id="@+id/imageView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/icon"/>
        </LinearLayout>
    </SlidingDrawer>
</FrameLayout>


ソースコード
SlidingDrawerEx.java
package net.npaka.slidingdrawerex;
import android.app.Activity;
import android.os.Bundle;
import android.view.Window;

//スライディングドロワー
public class SlidingDrawerEx extends Activity {
    //アプリの初期化
    @Override
    public void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.main);
    }
}


−戻る−