最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android編程實現(xiàn)抽屜效果的方法詳解

 更新時間:2017年05月30日 09:34:16   作者:android小豬  
這篇文章主要介紹了Android編程實現(xiàn)抽屜效果的方法,結(jié)合具體實例形式分析了Android實現(xiàn)抽屜效果的具體步驟與相關(guān)操作技巧,需要的朋友可以參考下

本文實例講述了Android編程實現(xiàn)抽屜效果的方法。分享給大家供大家參考,具體如下:

android的UI開發(fā)確實是一件很有趣的事情,也是一件很有挑戰(zhàn)性的事情。

本文章是將自己在開發(fā)中的項目中使用到的比較好的抽屜效果的原理以及代碼整理后寫上來的,以備忘記后可以查閱

抽屜效果的原理很簡單,就是給其一個事件監(jiān)聽(動作),然后對此動作所作出的反應(yīng)(開 or 關(guān));

在編寫代碼的時候要注意的幾點如下:

1、 打開抽屜的圖標(biāo)(即觸發(fā)抽屜的把手),打開后的界面都是布局在<SlidingDrawer/><SlidingDrawer/>標(biāo)簽中
2、在<SlidingDrawer/>與<SlidingDrawer/>標(biāo)簽中設(shè)置:android:handle="@+id/handle_layout" 用來指定抽屜的把手;設(shè)置:android:content="@+id/content_layout" 用來指定打開       抽屜后的View(即抽屜里面的內(nèi)容)
3、 SlidingDrawer一共有三個監(jiān)聽事件(見代碼)

注意:三者的執(zhí)行順序,總的原則是:滑動完成后,打開(或者關(guān)閉)抽屜

執(zhí)行的順序:

1 、setOnDrawerScrollListener(給把手一個動作)
2、 setOnDrawerOpenListener(打開抽屜) 或 setOnDrawerCloseListener(關(guān)閉抽屜)

下面是代碼:

activity_main.xml:

<!-- 在SlidingDrawer這個標(biāo)簽下android:handle:指示的就是抽屜的圖片。
android:content:指向的就是抽屜里面的布局。有了這個布局,其實一個抽屜就出來了 -->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent" >
  <TextView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/hello"
    android:textSize="20sp" />
  <SlidingDrawer
    android:id="@+id/sd"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:content="@+id/myContent"
    android:handle="@+id/iv"
    android:orientation="vertical" >
    <ImageView
      android:id="@id/iv"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:src="@drawable/open1" />
    <GridView
      android:id="@id/myContent"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:background="@drawable/background"
      android:gravity="center"
      android:numColumns="3" />
  </SlidingDrawer>
</RelativeLayout>

MainActivity.java 中主要的代碼如下:

package com.example.exp_sliding;
import android.os.Bundle;
import android.app.Activity;
import android.widget.GridView;
import android.widget.ImageView;
import android.widget.SlidingDrawer;
import android.widget.SlidingDrawer.OnDrawerScrollListener;
@SuppressWarnings("deprecation")
public class MainActivity extends Activity {
  private GridView gridView;
  private SlidingDrawer slidingDrawer;
  private ImageView imageView;
  private int[] icons = { R.drawable.one, R.drawable.two, R.drawable.three,
      R.drawable.four, R.drawable.five, R.drawable.six, R.drawable.seven,
      R.drawable.eight, R.drawable.nine };
  private String[] items = { "one", "two", "three", "four", "five", "six",
      "seven", "eight", "nine" };
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    gridView = (GridView) findViewById(R.id.myContent);
    slidingDrawer = (SlidingDrawer) findViewById(R.id.sd);
    imageView = (ImageView) findViewById(R.id.iv);
    // 自定義MyAdapter來實現(xiàn)圖標(biāo)加item的顯示效果
    MyAdapter adapter = new MyAdapter(this, items, icons);
    gridView.setAdapter(adapter);
    //滑動
    slidingDrawer.setOnDrawerScrollListener(new OnDrawerScrollListener() {
        public void onScrollStarted() {
          System.out.println("--------> 開始滑動");
        }
        public void onScrollEnded() {
         System.out.println("--------> 滑動結(jié)束");
        }
    });
    //開抽屜動作響應(yīng)
    slidingDrawer.setOnDrawerOpenListener(new SlidingDrawer.OnDrawerOpenListener()
        {
          @Override
          public void onDrawerOpened() {
            imageView.setImageResource(R.drawable.close1);// 響應(yīng)開抽屜事件
          }
        });
    //關(guān)抽屜動作響應(yīng)
    slidingDrawer.setOnDrawerCloseListener(new SlidingDrawer.OnDrawerCloseListener() {
          @Override
          public void onDrawerClosed() {
            imageView.setImageResource(R.drawable.open1);// 響應(yīng)關(guān)抽屜事件
          }
        });
  }
}

這是一個很基礎(chǔ)的上下開關(guān)抽屜的例子,其中涉及的MyAdapter類是一個圖片的收集器,這個相信大家有一定基礎(chǔ)的都會寫這個吧,由于時間關(guān)系,在這里就不貼出來了。

更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android布局layout技巧總結(jié)》、《Android視圖View技巧總結(jié)》、《Android線程與消息機(jī)制用法總結(jié)》、《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android調(diào)試技巧與常見問題解決方法匯總》、《Android開發(fā)入門與進(jìn)階教程》、《Android基本組件用法總結(jié)》及《Android控件用法總結(jié)

希望本文所述對大家Android程序設(shè)計有所幫助。

相關(guān)文章

  • Android仿ios年齡、生日、性別滾輪效果

    Android仿ios年齡、生日、性別滾輪效果

    這篇文章主要為大家詳細(xì)介紹了Android仿ios年齡、生日、性別滾輪效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • Android仿IOS底部彈出對話框

    Android仿IOS底部彈出對話框

    這篇文章主要為大家詳細(xì)介紹了Android仿IOS底部彈出對話框的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-01-01
  • Android 中 MD5 的幾種生成方式(小結(jié))

    Android 中 MD5 的幾種生成方式(小結(jié))

    這篇文章主要介紹了Android 中 MD5 的幾種生成方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • Android Kotlin 基本數(shù)據(jù)類型詳解

    Android Kotlin 基本數(shù)據(jù)類型詳解

    Kotlin是一種靜態(tài)類型語言,適用于Android開發(fā),Kotlin的基本數(shù)據(jù)類型包括數(shù)值類型、字符類型、布爾類型和數(shù)組類型,本文介紹Android Kotlin 基本數(shù)據(jù)類型,感興趣的朋友一起看看吧
    2025-03-03
  • 關(guān)于RxJava的一些特殊用法小結(jié)

    關(guān)于RxJava的一些特殊用法小結(jié)

    RxJava 是一個響應(yīng)式編程框架,采用觀察者設(shè)計模式。下面這篇文章主要總結(jié)介紹了一些關(guān)于RxJava的特殊用法,需要的朋友可以參考借鑒,下面跟著小編一起來學(xué)習(xí)學(xué)習(xí)吧。
    2017-05-05
  • 如何解決android Toast重復(fù)顯示

    如何解決android Toast重復(fù)顯示

    Toast是一種簡易的消息提示框,它無法獲取焦點,按設(shè)置的時間來顯示完以后會自動消失,一般用于幫助或提示,本文給大家介紹android Toast重復(fù)顯示的解決辦法,涉及到android toast 相關(guān)知識,有需要的朋友參考下
    2016-01-01
  • Android實現(xiàn)在xml文件中引用自定義View的方法分析

    Android實現(xiàn)在xml文件中引用自定義View的方法分析

    這篇文章主要介紹了Android實現(xiàn)在xml文件中引用自定義View的方法,結(jié)合實例形式分析了Android自定義view的實現(xiàn)方法與相關(guān)注意事項,需要的朋友可以參考下
    2017-06-06
  • Android設(shè)置全屏代碼分享

    Android設(shè)置全屏代碼分享

    本文是安卓代碼分享的第一篇,給大家分享了一段簡單的設(shè)置安卓全屏的代碼,后續(xù)還會為大家分享一些。
    2014-10-10
  • Android?十六進(jìn)制狀態(tài)管理實例詳解

    Android?十六進(jìn)制狀態(tài)管理實例詳解

    這篇文章主要為大家介紹了Android?十六進(jìn)制狀態(tài)管理實例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09
  • Android下拉刷新上拉加載控件(適用于所有View)

    Android下拉刷新上拉加載控件(適用于所有View)

    這篇文章主要介紹了Android下拉刷新上拉加載控件,對所有View通用,感興趣的小伙伴們可以參考一下
    2016-03-03

最新評論

安西县| 宣化县| 高邮市| 谢通门县| 南溪县| 台东县| 大丰市| 曲阜市| 土默特左旗| 武川县| 淄博市| 绥阳县| 黄大仙区| 油尖旺区| 娄烦县| 台南市| 高尔夫| 南汇区| 鄂伦春自治旗| 孟村| 龙江县| 长乐市| 开阳县| 新田县| 获嘉县| 镇赉县| 黎川县| 惠安县| 鲜城| 翁牛特旗| 大洼县| 汉源县| 木兰县| 大渡口区| 芜湖市| 大港区| 湟中县| 武宣县| 锡林郭勒盟| 民乐县| 陈巴尔虎旗|