中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何實現iOS版微信的滑動View效果

發布時間:2021-06-28 14:03:36 來源:億速云 閱讀:192 作者:小新 欄目:移動開發

這篇文章主要為大家展示了“如何實現iOS版微信的滑動View效果”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“如何實現iOS版微信的滑動View效果”這篇文章吧。

前言

最近經常交替使用Android和iOS手機。對于兩個系統,從我們常用的列表來看,Android一般的列表菜單是通過長按出來的,而iOS是通過滑動出現的。比如我們常用的微信,對于Android版本,長按某個聊天好友,會彈出 標為未讀,置頂聊天,刪除聊天 選項;對于iOS的版本,右滑,會顯示出 標為未讀,刪除 選項

---------------------------------我是分割線---------------------------------

1. 滑動View

1.1 內容展示

我在Android上面,實現了一個滑動的View,模仿的是微信的iOS版,先簡單列舉一下功能,直接上圖,看著比較直觀一些。下面我放了四個動畫,分別是:滑動展開,單擊,長按,雙擊。

滑動效果

如何實現iOS版微信的滑動View效果

滑動展開

單擊選擇效果

如何實現iOS版微信的滑動View效果

單擊選擇

長按、雙擊效果

如何實現iOS版微信的滑動View效果

長按和雙擊效果

1.2 功能介紹

這個滑動View是一個自定義View,里面主要用了屬性動畫,觸摸檢測,觸摸反饋,配合測量完成。

使用時,只需要在布局文件里面調用就可以,和 TextView 等常用控件一樣,像這個樣子。

在activity里面

slideView = findViewById(R.id.slide_view1);
    slideView.setOnClickListener(new Listener.OnMenuClickListener() {
      @Override
      public void onClick(int id) {
        switch(id){

          case R.id.menu_a:
            Util.toast("點擊 刪除");
            break;
          case R.id.menu_b:
            Util.toast("點擊 設為未讀");
            break;
          case R.id.sure_delete:
            Util.toast("點擊 確認刪除");
            break;
          case R.id.long_press:
            Util.toast("長按");
            VibratorLib.vibrateShort();
            break;
          case R.id.double_click:
            Util.toast("雙擊");
            break;
        }
      }
    });

在xml里面

<android.support.constraint.ConstraintLayout
  ......
  <demo.com.library.view.SlideView
    android:id="@+id/slide_view1"
    ...

    app:image_src="@drawable/crekerli_pig"
    app:image_margin_start="10dp"
    app:image_slide_length="60dp"

    app:title_text="@string/title"
    app:title_text_size="20sp"
    app:title_text_color="@color/colorBlack"
    app:title_text_margin_start="10dp"

    app:message_text="@string/message"
    app:message_text_size="12sp"
    app:message_text_color="@color/colorBlack"
    app:message_text_margin_start="10dp"

    app:menu_a_background="@color/colorRed"
    app:menu_a_text="@string/delete"
    app:menu_a_text_size="20sp"
    app:menu_a_aspect="1"

    app:menu_b_background="@color/colorGray"
    app:menu_b_text="@string/set"
    app:menu_b_text_size="20sp"
    app:menu_b_aspect="1.2"/>
    ...

從xml文件里面,細心一點兒可以看出我對SlideView的內容分成了 image title message menu_a menu_b 五個部分。對應到View里面,看下面的圖示:

如何實現iOS版微信的滑動View效果

頁面展開前

如何實現iOS版微信的滑動View效果

頁面展開后

下面分別介紹一下五個部分。

2. 五個部分

2.1 image

image 表示用戶頭像,里面有三個配置參數

app:image_src="@drawable/crekerli_pig"
app:image_margin_start="10dp"
app:image_slide_length="60dp"
image_src
image_margin_start
image_slide_length

2.2 title

app:title_text="@string/title"
app:title_text_size="20sp"
app:title_text_color="@color/colorBlack"
app:title_text_margin_start="10dp"
title_text
title_text_size
title_text_color
title_text_margin_start

2.3 message

app:message_text="@string/message"
app:message_text_size="12sp"
app:message_text_color="@color/colorBlack"
app:message_text_margin_start="10dp"
message_text
message_text_size
message_text_color
message_text_margin_start

2.4 menu

menu_a 和menu_b的內容是一樣的,所以這里放在一起統一講

app:menu_a_background="@color/colorRed"
app:menu_a_text="@string/delete"
app:menu_a_text_size="20sp"
app:menu_a_aspect="1"
app:menu_a_backgroundor
app:menu_a_text
app:menu_a_text_size
app:menu_a_aspect

以上是“如何實現iOS版微信的滑動View效果”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

ios
AI

尉氏县| 孝感市| 康马县| 巴塘县| 华亭县| 长武县| 乌恰县| 疏勒县| 潢川县| 新和县| 砚山县| 沛县| 平昌县| 资溪县| 灵石县| 垫江县| 新昌县| 韶山市| 通江县| 元阳县| 独山县| 锦屏县| 永靖县| 治多县| 林芝县| 利川市| 合肥市| 应用必备| 武清区| 彭阳县| 莱西市| 诸暨市| 淳化县| 当阳市| 大厂| 京山县| 凤翔县| 通河县| 金昌市| 嘉峪关市| 明水县|