午夜勾魂曲-午夜福利自怕-午夜福利在线观看6080-午夜福利院电影-国产精品毛片AV久久97-国产精品麻豆高潮刺激A片

TinyUI-TUIListView最簡單的使用

2020-4-7    seo達人

      在TinyUI簡介的博客中提到其特點中包含一條,即多數大控件的使用方法和android一直,除了語言差異之外,本篇我們就介紹列表控件TUIListView最簡單的使用方法。



        列表組件/控件作為目前Android/iOS的APP中最常用的控件,該控件的設計同時參考Android、windows、Qt等使用的經驗進行篩選,最終選擇了Android的ListView設計,其他平臺的列表中使用難以程度或設計上略遜于Android,因為Android給與了開發者最大的發揮控件,你可以在列表中可以顯示任何控件。



        TUIListView中的每一行每一列你可以放置任何UI組件,使用TUIListView需要配合TUIAdapter進行使用,而TinyUI和Android一樣提供了內置的簡單使用的TUISimpleAdapter。TUISimpleAdapter主要用于顯示文本(即每一行都是只能顯示文字),如果需要在列表中顯示其他UI組件,則需要自定義一個Adapter,關于自定義Adapter將在后續進行詳細講解。



        本篇既然是TUIListView最簡單的使用,我們就使用TUISimpleAdapter來顯示文本你列表,TUISimpleAdapter最好只用于數據步發生變化的情況,因為其存放的數據使用了C++標準庫的vector容器,而非使用list容器,vector容器的特點是訪問速度快,但其缺點是vector的內存是連續的,因此內容發生變化可能會造成內存申請和拷貝的動作;而list容器使用的雙向鏈表,其特點是插入數據快,但訪問速度慢。



        本篇我們仍然使用上一篇中自定義的MyWindow來顯示TUIListView。



使用方法/步驟

  1. 定義listView和andapter



            MyWindow中包含TUISimpleAdapter.h的頭文件,并定義listView和adapter



    MyWindow.h


    ifndef MY_WINDOW_H

    define MY_WINDOW_H

    include <TUIWindow.h>

    include <TUISimpleAdapter.h>

     

     

     

    class MyWindow : public TUIWindow

    {

    public:

        MyWindow(TUIWindow* parent = nullptr);

        virtual ~MyWindow();

     

        void onShow();

        void onClose();

     

    private:

        TUIListView listView;

        TUISimpleAdapter adapter;

    };

     

    endif // !MY_WINDOW_H

     


  2. 填充數據,并把adapter設置到listView中



    MyWindow.cpp


    include "MyWindow.h"

     

     

     

    MyWindow::MyWindow(TUIWindow* parent)

        : TUIWindow(parent)

    {

        setContentView(&this->listView); // 把listView作為當前窗口的內容視圖

     

     

        vector<string> data; // 使用vector<string>類型的data存放數據

     

        for (int32_t i = 0; i < 20; i++)

        {

            data.push_back(to_string(i)); // 生成0~20的數值-轉換成字符串,放到data中

        }

     

        this->adapter.setData(data); // 把data設置到adapter中

     

        this->listView.setAdapter(&this->adapter); // 把adapter設置到listView,作為listView數據來源和操作對象

    }

     

    MyWindow::~MyWindow()

    {

    }

     

    void MyWindow::onShow()

    {

    }

     

    void MyWindow::onClose()

    {

    }

    到目前為止窗口顯示列表控件已全部完成,接下來和上一篇一樣調用MyWindow的show()方法即可顯示,最終結果如下圖所示:


日歷

鏈接

個人資料

藍藍設計的小編 http://m.gerard.com.cn

存檔

主站蜘蛛池模板: 很很射影院 | 第七色男人天堂 | 亚洲国产成人精品不卡青青草原 | 草民电影网午夜伦理电影网 | 久久久久综合网久久 | 国产午夜亚洲精品理论片八戒 | 最近最新中文字幕MV高清在线 | 老头扒开粉缝亲我下面 | 动漫美女3d被爆漫画 | 男人天堂999| 找老女人泻火对白自拍 | 精品国产露脸久久AV麻豆 | 欧美高清vivoesond在线播放 | 亚洲精品一二三区区别在哪 | 97视频在线观看免费视频 | 国产69精品久久久久无码麻豆 | 国产亚洲视频在线 | 午夜福利不卡片在线播放免费 | 99热这里有精品 | 东京热无码中文字幕av专区 | 97色伦图区97色伦综合图区 | 高跟丝袜岳第一次 | 成人在无码AV在线观看一 | 国产免费人成在线看视频 | 国产午夜高潮熟女精品AV | 麻豆一二三区果冻 | 一级淫片bbbxxx| 精品国产在线观看福利 | 花蝴蝶在线观看免费中文版高清 | 年轻的母亲4线在线观看完整 | 亚洲 综合 欧美在线 热 | 久久久久亚洲日日精品 | 色欲AV亚洲午夜精品无码 | 美女扒开腿让男生桶免费看动态图 | 国产精品观看视频免费完整版 | 精品国产5g影院天天爽 | 热中文热国产热综合 | 乱色欧美激惰 | 亚洲精品无码不卡在线播放he | 亚洲视频91 | 亚洲精品久久一区二区三区四区 |