• <center id="sm46c"></center>
  • <dfn id="sm46c"></dfn>
  • <strike id="sm46c"></strike>
  • <cite id="sm46c"><source id="sm46c"></source></cite>
    • <strike id="sm46c"><source id="sm46c"></source></strike>
      <option id="sm46c"></option>
      国产精品天天看天天狠,女高中生强奷系列在线播放,久久无码免费的a毛片大全,国产日韩综合av在线,亚洲国产中文综合专区在,特殊重囗味sm在线观看无码,中文字幕一区二区三区四区在线,无码任你躁久久久久久老妇蜜桃

      TinyUI-TUIListView最簡(jiǎn)單的使用

      2020-4-7    seo達(dá)人

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



              列表組件/控件作為目前Android/iOS的APP中最常用的控件,該控件的設(shè)計(jì)同時(shí)參考Android、windows、Qt等使用的經(jīng)驗(yàn)進(jìn)行篩選,最終選擇了Android的ListView設(shè)計(jì),其他平臺(tái)的列表中使用難以程度或設(shè)計(jì)上略遜于Android,因?yàn)锳ndroid給與了開(kāi)發(fā)者最大的發(fā)揮控件,你可以在列表中可以顯示任何控件。



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



              本篇既然是TUIListView最簡(jiǎn)單的使用,我們就使用TUISimpleAdapter來(lái)顯示文本你列表,TUISimpleAdapter最好只用于數(shù)據(jù)步發(fā)生變化的情況,因?yàn)槠浯娣诺臄?shù)據(jù)使用了C++標(biāo)準(zhǔn)庫(kù)的vector容器,而非使用list容器,vector容器的特點(diǎn)是訪(fǎng)問(wèn)速度快,但其缺點(diǎn)是vector的內(nèi)存是連續(xù)的,因此內(nèi)容發(fā)生變化可能會(huì)造成內(nèi)存申請(qǐng)和拷貝的動(dòng)作;而list容器使用的雙向鏈表,其特點(diǎn)是插入數(shù)據(jù)快,但訪(fǎng)問(wèn)速度慢。



              本篇我們?nèi)匀皇褂蒙弦黄凶远x的MyWindow來(lái)顯示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. 填充數(shù)據(jù),并把a(bǔ)dapter設(shè)置到listView中



        MyWindow.cpp


        include "MyWindow.h"

         

         

         

        MyWindow::MyWindow(TUIWindow* parent)

            : TUIWindow(parent)

        {

            setContentView(&this->listView); // 把listView作為當(dāng)前窗口的內(nèi)容視圖

         

         

            vector<string> data; // 使用vector<string>類(lèi)型的data存放數(shù)據(jù)

         

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

            {

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

            }

         

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

         

            this->listView.setAdapter(&this->adapter); // 把a(bǔ)dapter設(shè)置到listView,作為listView數(shù)據(jù)來(lái)源和操作對(duì)象

        }

         

        MyWindow::~MyWindow()

        {

        }

         

        void MyWindow::onShow()

        {

        }

         

        void MyWindow::onClose()

        {

        }

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


      日歷

      鏈接

      個(gè)人資料

      存檔

      主站蜘蛛池模板: 亚洲精品理论电影在线观看| 天天在线看无码AV片| 久久日本片精品aaaaa国产 | 加勒比中文字幕无码一区| 金门县| 亚洲美女厕所偷拍美女尿尿| 日韩精品高清自在线| 亚洲欧美日韩尤物AⅤ一区| 丰满少妇被猛烈进出69影院| 一本色道久久综合熟妇人妻| 无码av波多野结衣久久| 国产在线无码免费视频2021| 国产美女被遭高潮免费| 国产农村妇女精品一二区| 久久久久久久一线毛片 | 欧美兽交xxxx×视频| 国产精品中文第一字幕| 欧美、另类亚洲日本一区二区| 天天躁夜夜躁狠狠躁躁88| 亚洲精品亚洲人成在线观看麻豆| 国产精品麻豆成人AV电影艾秋 | 狠狠综合久久综合88亚洲| 精品久久综合1区2区3区激情| 亚洲国产成人资源在线| 蜜臀视频一区二区在线播放| 男男欧美一区二区| 亚洲精品久久久久久久观看| 久久五月天综合| 龙江县| 国产精品天天在线午夜更新| 国产毛多水多高潮高清| 无码av孕妇专区| 69精品在线观看| 人妻丝袜中文无码AV影音先锋专区| 99热都是精品久久久久久| 国产成人无码免费视频79| 少妇人妻偷人偷人精品| 在线涩涩免费观看国产精品| 欧洲一区在线观看| 国产大片91精品免费看3| 久久精品国产亚洲综合av|