<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    饒榮慶 -- 您今天UCWEB了嗎?--http://www.ucweb.com

    3G 手機開發網

       :: 首頁 :: 聯系 :: 聚合  :: 管理
      99 Posts :: 1 Stories :: 219 Comments :: 0 Trackbacks
    關鍵字: J2ME       

    文章出處

    http://www.3geye.net/bbs/thread-268-1-1.html


    關于UI組件,上下滾動,平滑滾動的技術實現探討

    關于UI組件,上下滾動,平滑滾動的技術實現探討

    在我設計的UI中存在的兩個問題一直沒有解決好

    1.是焦點處理機制-- 這個問題已經在前幾天我解決了。

    2.就是上下滾動,平滑滾動,觸摸屏滾動,實現的不是很到。雖然是解決了一部分問題,但是另外一部分問題又冒出來了。

    下面我重點老討論這個問題。希望大家有什么好的想法也說下。分享下經驗,讓我少走彎路

    現在來看看下面的圖

    假設:圖A 為 整個Canvas可以顯示的圖, 圖B為 需要顯示的圖,

    我們來看看這算適合坐滾動設計嗎。看看下面的邏輯。現在假設HA為A的高度, HB為B的高度,ScrollH表示滾動條的高度。進度條的位置為ScrollY,系統滾動的增量為regionY

    1.  如果A的高度> B的高度,則不需要滾動

    2.  如果A的高度

     

    下面是算法比例ScrollH/HA = HA/HB è ScrollH=HA*HA/HB;

    得到當前進度條的位置是 ScrollY/HA = regionY/HB è ScrollY=regionY*HA/HB

     

    當調用keyPressed事件的時候處理regionY; è down:rgionY -= 30; up:region += 30;

    然后自動更新ScrollY ;最后調用repaint();

     

    上面是算法模型,現在來看下我的具體實現,希望大家對這個模型多多批評,看看還有沒有更好的算法實現。

    在調式的過程中遇到一個很特別的問題,居然public void keyPressed(int keyCode)沒有任何響應。哈哈,是我眼花,原來是采用了print的方法,所以沒仔細看,看不到輸出。郁悶啊

     

    經過測試,此路完全是走的通的,現在看看代碼是怎么實現的,我知識對字符串進行簡單的處理實現,對于更復雜的UI組件,原理差不錯。不過要做下小修改

     
    import javax.microedition.lcdui.*;

    /**
     *

    Title:


     *
     *

    Description:


     *
     *

    Copyright: Copyright (c) 2007


     *
     *

    Company:


     *
     * @author not attributable
     * @version 1.0
     */
    public class TestCanvas extends Canvas  {

        private String text="關關于UI組件,上下滾動,平滑滾動的視線技術探討在我設計的UI中存在的兩個問題一直沒有解決好1.是焦點處理機制-- 這個問題已經在前幾天我解決了。2.就是上下滾動,平滑滾動,觸摸屏滾動,實現的不是很到。雖然是解決了一部 "+
                            "分問題,但是另外一部分問題又冒出來了。下面我重點老討論這個問題。希望大家有什么好的想法也說下。分享下經驗,讓我少走彎路關于UI組件,上下滾動, 平滑滾動的視線技術探討在我設計的UI中存在的兩個問題一直沒有解決好1.是焦點處理機制-- 這個問題已經在前幾天我解決了。2.就是上下滾動,平滑滾動,觸摸屏滾動,實現的不是很到。雖然是解決了一部分問題,但是另外一部分問題又冒出來了。下面 我重點老討論這個問題。希望大家有什么好的想法也說下。分享下經驗,讓我少走彎路于UI組件,上下滾動,平滑滾動的視線技術探討在我設計的UI中存在的兩 個問題一直沒有解決好1.是焦點處理機制-- 這個問題已經在前幾天我解決了。2.就是上下滾動,平滑滾動,觸摸屏滾動,實現的不是很到。雖然是解決了一部分問題,但是另外一部分問題又冒出來了。下面 我重點老討論這個問題。希望大家有什么好的想法也說下。分享下經驗,讓我少走彎路sdf" +
                            "是焦點處理機制-- 這個問題已經在前幾天我解決了。2.就是上下滾動,平滑滾動,觸摸屏滾動,實現的不是很到。雖然是解決了一部分問題,但是另外一部分問題又冒出來了。下是 焦點處理機制-- 這個問題已經在前幾天我解決了。2.就是上下滾動,平滑滾動,觸摸屏滾動,實現的不是很到。雖然是解決了一部分問題,但是另外一部分問題又冒出來了。下是 焦點處理機制-- 這個問題已經在前幾天我解決了。2.就是上下滾動,平滑滾動,觸摸屏滾動,實現的不是很到。雖然是解決了一部分問題,但是另外一部分問題又冒出來了。下是 焦點處理機制-- 這個問題已經在前幾天我解決了。2.就是上下滾動,平滑滾動,觸摸屏滾動,實現的不是很到。雖然是解決了一部分問題,但是另外一部分問題又冒出來了。下是 焦點處理機制-- 這個問題已經在前幾天我解決了。2.就是上下滾動,平滑滾動,觸摸屏滾動,實現的不是很到。雖然是解決了一部分問題,但是另外一部分問題又冒出來了。下是 焦點處理機制-- 這個問題已經在前幾天我解決了。2.就是上下滾動,平滑滾動,觸摸屏滾動,實現的不是很到。雖然是解決了一部分問題,但是另外一部分問題又冒出來了。下是 焦點處理機制-- 這個問題已經在前幾天我解決了。2.就是上下滾動,平滑滾動,觸摸屏滾動,實現的不是很到。雖然是解決了一部分問題,但是另外一部分問題又冒出來了。下是 焦點處理機制-- 這個問題已經在前幾天我解決了。2.就是上下滾動,平滑滾動,觸摸屏滾動,實現的不是很到。雖然是解決了一部分問題,但是另外一部分問題又冒出來了。下 ";
        private int sreenWidth;
        private int sreenHeight;
        private int scrollHeight;
        private int scrollY;
        private int regionY;

        private int numHeight;

        public TestCanvas() {
            try {

                this.setFullScreenMode(true);
                this.sreenHeight = this.getHeight();
                this.sreenWidth = this.getWidth();
           }
            catch(Exception e) {
                e.printStackTrace();
            }
        }

     

     

        protected void paint(Graphics g) {
            g.setColor(0xFFFFFF);
            g.fillRect(0,0,this.sreenWidth, this.sreenHeight);
            char[] chars = text.toCharArray();
            int h = 0;
            int w = 0;
            Font font  = g.getFont();
            g.setColor(0x00000);
            for(int i=0; i
                if(w > this.sreenWidth - 18){
                    h += font.getHeight();
                    w = 0;
                }
                g.drawChar(chars,w, h + this.regionY, Graphics.TOP | Graphics.LEFT);
                w += font.charWidth(chars);
            }
            if(this.numHeight == 0)
                this.numHeight = h+font.getHeight();

            this.scrollHeight = this.sreenHeight * this.sreenHeight/numHeight;
            this.scrollY = (-this.regionY)*this.sreenHeight/numHeight;

            g.setColor(255);
            g.fillRect(this.sreenWidth-6,0, 6, this.sreenHeight);

            g.setColor(0xFFFFFF);
             g.fillRect(this.sreenWidth-5,this.scrollY, 4, this.scrollHeight);
        }

         public void keyPressed(int keyCode) {
             System.out.println(keyCode);
             if(keyCode == -2){
                 if(this.sreenHeight - this.regionY  > this.numHeight)
                     return;
                 this.regionY -= 30;
             }
             else if (keyCode == -1){
                 if(this.regionY>=0)
                     return;
                 this.regionY += 30;
             }
             this.repaint();
         }

    }

    爬蟲工作室 -- 專業的手機軟件開發工作室
    3G視線 -- 專注手機軟件開發
    posted on 2007-10-16 08:53 3G工作室 閱讀(1594) 評論(3)  編輯  收藏 所屬分類: j2me

    Feedback

    # re: 關于UI組件,上下滾動,平滑滾動的技術實現探討 2007-10-16 12:33 翔南
    貌似沒圖?
    看不到圖哈!  回復  更多評論
      

    # re: 關于UI組件,上下滾動,平滑滾動的技術實現探討 2007-10-20 01:40 bigboy
    你們工作室的?  回復  更多評論
      

    # re: 關于UI組件,上下滾動,平滑滾動的技術實現探討[未登錄] 2007-10-31 19:34 xxx
    是的,可惜圖看不到
    去我空間看原文吧。
    wuhua.3geye.net  回復  更多評論
      

    主站蜘蛛池模板: 国产aⅴ无码专区亚洲av| 亚洲性在线看高清h片| 亚洲最大的成网4438| 国产麻豆成人传媒免费观看| 亚洲精品夜夜夜妓女网| 中文字幕免费在线看| 久久精品国产99精品国产亚洲性色| 久久国产免费观看精品| 91亚洲精品第一综合不卡播放| 亚洲精品视频免费看| 亚洲色偷偷偷综合网| 四虎永久免费地址在线网站| 国产精品极品美女自在线观看免费 | a级毛片100部免费观看| 国产亚洲精品资源在线26u| 一级特黄aa毛片免费观看| 亚洲中文字幕人成乱码| 国产国产成年年人免费看片| 亚洲国产免费综合| 久久久久亚洲av无码专区导航 | 亚洲国产精品无码AAA片| 最近中文字幕大全免费视频| 亚洲粉嫩美白在线| 亚洲美女在线国产| 久久精品成人免费看| 亚洲中文字幕无码中文| 亚洲精品和日本精品| 99视频有精品视频免费观看| 亚洲中文字幕一二三四区| 亚洲精品自产拍在线观看| 18未年禁止免费观看| 日本亚洲中午字幕乱码| 亚洲va久久久噜噜噜久久天堂| 四虎成人免费网站在线| 国产免费一区二区三区不卡| 亚洲乱亚洲乱妇24p| 亚洲AV综合色区无码另类小说| 成年女人午夜毛片免费视频| 中国内地毛片免费高清| 国产亚洲精aa在线看| 久久亚洲精品AB无码播放|