<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  回復  更多評論
      

    主站蜘蛛池模板: 国产亚洲高清不卡在线观看| 国产成人综合亚洲绿色| 亚洲国产日韩女人aaaaaa毛片在线| 中文字幕精品亚洲无线码一区 | 18级成人毛片免费观看| 精品久久久久久久久免费影院| 永久免费视频网站在线观看| 日本人护士免费xxxx视频| 久久久久国产成人精品亚洲午夜| 国产亚洲精品影视在线产品 | 伊人亚洲综合青草青草久热| 亚洲啪啪AV无码片| 亚洲综合在线一区二区三区 | 美女啪啪网站又黄又免费| 日本免费一区二区三区四区五六区| 久久久久免费看黄A片APP| 中文字幕亚洲第一| 亚洲白嫩在线观看| 免费无码作爱视频| 日韩一区二区在线免费观看 | www国产亚洲精品久久久| 亚洲精选在线观看| 男人j进女人p免费视频| 18禁网站免费无遮挡无码中文| 亚洲综合伊人久久综合| 亚洲精品成a人在线观看夫| 无码av免费网站| 国产国拍亚洲精品mv在线观看| 国产午夜亚洲精品不卡电影| 午夜小视频免费观看| 亚洲综合伊人制服丝袜美腿| 国产精品免费观看调教网| 亚洲国产精品VA在线观看麻豆| 国产尤物在线视精品在亚洲| 国产男女猛烈无遮挡免费视频网站 | 午夜亚洲国产理论秋霞| 男人的天堂网免费网站| 亚洲无人区午夜福利码高清完整版| 香蕉视频免费在线| 亚洲国产成人精品91久久久| 久久久久久久久久免免费精品 |