鴻蒙移動端常用UI——refresh上下拉刷新和左滑刪除

效果圖


image.png
image.png

refresh上下拉刷新和左滑刪除功能全部代碼簿姨,上拉刷新功能待優(yōu)化

import { BSText } from '../../../components/BSUI'
import { AppBarWidget } from './AppBarWidget'
@Entry
@Component
struct RefreshPage {
  @State isRefreshing: boolean = false
  @State counter: number = 0
  private items:Array<string> = ['1','2','3','1','2','3','1','2','3','1','2','3','1','2','3','1','2','3']
  @State isLoading: boolean = false
  @State isOnReachEnd: boolean = false

  @Builder deleteItem(){
    Row(){
      BSText({title:'刪除',fontColor:'#F33F3F',fontSize:15})
    }.height('100%')
    .padding(8)
    .backgroundColor(Color.Orange)
  }
  @Builder item(title:string){
    Row(){
      BSText({title:title+ '+' + this.counter.toString(),fontColor:'#333333',fontSize:15}).margin(20)
    }.backgroundColor(Color.Blue).width('100%')
  }

  build() {
    Column() {
      AppBarWidget({title:'RefreshPage'})
      Stack(){
        Refresh({ refreshing: $$this.isRefreshing, offset: 120, friction: 100 }) {
          List(){
            ForEach(this.items,(item:string)=>{
              ListItem(){
                this.item(item.toString())
              }.swipeAction({end:this.deleteItem()}).width('100%').margin({bottom:10})
            })
          }
          .backgroundColor(Color.Pink)
          .onReachEnd(() => {
            this.isLoading = true;
            if (this.isOnReachEnd == false){
              //解決觸發(fā)兩次重復(fù)調(diào)用的問題,延遲時間最低2000诗宣,具體原因要查看list中onReachEnd的API
              this.isOnReachEnd = true;
              setTimeout(() => {
                this.counter++
                this.isLoading = false
                this.isOnReachEnd = false
              }, 2000)
            }
          })

        }
        .onStateChange((refreshStatus: RefreshStatus) => {
          // console.info('Refresh onStatueChange state is ' + refreshStatus)
        })
        .onRefreshing(() => {
          this.isLoading = true;
          setTimeout(() => {
            this.counter++
            this.isRefreshing = false
            this.isLoading = false
          }, 1000)
          console.log('onRefreshing test')
        })
        .backgroundColor(Color.Pink)

        //遮罩層
        Flex({justifyContent:FlexAlign.Center}){
          //下拉刷新不顯示
          LoadingProgress().color(Color.Red).width(40).visibility( (this.isLoading == true  && this.isRefreshing ==false ) ? Visibility.Visible : Visibility.None)
        }
        .backgroundColor(Color.Transparent)
        .layoutWeight(1).visibility( this.isLoading == true ? Visibility.Visible : Visibility.None)


      }


    }
  }
}

ps:
1、BS開頭的API是為了方便開發(fā)和維護外傅,對鴻蒙UI做了一層簡單的封裝蹦哼,并且會陸續(xù)進行更新.
2鳄哭、基于API Version9版本.
3、看到文章覺得還OK麻煩留個贊??謝謝啦~

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末纲熏,一起剝皮案震驚了整個濱河市妆丘,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌局劲,老刑警劉巖勺拣,帶你破解...
    沈念sama閱讀 217,657評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異鱼填,居然都是意外死亡药有,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,889評論 3 394
  • 文/潘曉璐 我一進店門苹丸,熙熙樓的掌柜王于貴愁眉苦臉地迎上來愤惰,“玉大人,你說我怎么就攤上這事赘理』卵裕” “怎么了?”我有些...
    開封第一講書人閱讀 164,057評論 0 354
  • 文/不壞的土叔 我叫張陵商模,是天一觀的道長奠旺。 經(jīng)常有香客問我,道長施流,這世上最難降的妖魔是什么响疚? 我笑而不...
    開封第一講書人閱讀 58,509評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮瞪醋,結(jié)果婚禮上忿晕,老公的妹妹穿的比我還像新娘。我一直安慰自己趟章,他們只是感情好杏糙,可當我...
    茶點故事閱讀 67,562評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著蚓土,像睡著了一般宏侍。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上蜀漆,一...
    開封第一講書人閱讀 51,443評論 1 302
  • 那天谅河,我揣著相機與錄音,去河邊找鬼确丢。 笑死绷耍,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的鲜侥。 我是一名探鬼主播褂始,決...
    沈念sama閱讀 40,251評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼描函!你這毒婦竟也來了崎苗?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,129評論 0 276
  • 序言:老撾萬榮一對情侶失蹤舀寓,失蹤者是張志新(化名)和其女友劉穎胆数,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體互墓,經(jīng)...
    沈念sama閱讀 45,561評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡必尼,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,779評論 3 335
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了篡撵。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片判莉。...
    茶點故事閱讀 39,902評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖育谬,靈堂內(nèi)的尸體忽然破棺而出骂租,到底是詐尸還是另有隱情,我是刑警寧澤斑司,帶...
    沈念sama閱讀 35,621評論 5 345
  • 正文 年R本政府宣布渗饮,位于F島的核電站,受9級特大地震影響宿刮,放射性物質(zhì)發(fā)生泄漏互站。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,220評論 3 328
  • 文/蒙蒙 一僵缺、第九天 我趴在偏房一處隱蔽的房頂上張望胡桃。 院中可真熱鬧,春花似錦磕潮、人聲如沸翠胰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,838評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽之景。三九已至斤富,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間锻狗,已是汗流浹背满力。 一陣腳步聲響...
    開封第一講書人閱讀 32,971評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留轻纪,地道東北人油额。 一個月前我還...
    沈念sama閱讀 48,025評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像刻帚,于是被迫代替她去往敵國和親潦嘶。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,843評論 2 354

推薦閱讀更多精彩內(nèi)容