• 37

[分享]SPB Mobile Shell 16頁聯絡人+大型天氣圖示+Diamond數字鐘

c9002003 wrote:
1. 我應該也可以在layouts.dat中改我想要的時鐘吧?? (前提是我要先到別的skin中把時鐘的XML code擷取出來對吧?)...(恕刪)

在XML時鐘的語法有兩種,如果你mobile shell設定為"專業模式",他用的是"ModernDClock"語法,如果是"傳統模式",他用的是"DigitalClock"語法,你在LockScreen.xml檔案內搜尋一下這兩個字串,就可以了解用法.事實上,不管是專業模式還是傳統模式,都可以使用"ModernDClock"及"DigitalClock"語法,隨你自己高興修改.

在XML檔案內,它只是定義數字時鐘的座標位置而已,如果你想要修改數字鐘的圖案,DigitalClock的圖檔是qa_dclock.dat,而ModernDClock的圖檔是qp_dclock_modern.dat及ql_dclock_modern.dat.你要修改這三個圖檔才對. (註:若是VGA 版本,這三個圖檔檔名的開頭為v,而不是q)

c9002003 wrote:
2. 像我的是wqvga螢幕, 在主頁面的最下方我有五頁可以選擇, 若我不喜歡第二夜的設定我可以自己改裡面的內容嗎?? 像我的第二頁是行事曆, 我應該可以把它改得顯示成spb diary或其他可以顯示在today(這裡的today我是指原始程式的today)的軟體吧?...(恕刪)

這個問題很多人討論過了,每一頁的內容隨你高興修改,各種排列組合都可以,但是僅限於mobile shell本身看的到的那些功能. 例如now screen有時鐘,你想要在氣象頁也加入時鐘,只要將xml裡面的程式碼複製過來,再修改一下座標即可.

然而,在today上的那一些插件(plugin),例如你所說的spb diary,是確定沒有辦法加入mobile shell裡面的. 我認為下個版本也應該不可以,因為這家公司還有另外一個產品叫做"spb pocket plus", 如果他們允許將today的插件(plugin)加入mobile shell,那麼mobile shell就應該幾乎可以完全取代spb pocket plus, 那麼誰還要花錢買spb pocket plus呢 ? 你認為廠商會這麼笨嗎 ? 我目前兩個軟體都安裝,就是因為功能有互補,無法彼此取代,如果哪天mobile shell真的可以加入today的插件(plugin),我一定將spb pocket plus刪除掉,以減少佔用記憶體.
原來是這樣子阿~~~ 若我想要修改的clock sorce是用ModernDClock(沒有用到DigitalClock),

所以我要把sorce的qp_dclock_modern.dat及ql_dclock_modern.dat丟到我目前的mobile shell

然後再改nowscreen的code(在我的mobile shell中沒有lockscreen只有nowscreen)是嗎?

而DigitalClock沒有用到也就不用更改嘍? 如果是的話我下班後再try try看!!

對了我還有一個問題, 就是若我的calender已經改成可以顯示代辦事項, 然後在我的nowscreen中也會顯示代辦事項,

但是我希望我的nowscreen只顯示月曆就好不要show出代辦事項, 這樣有辦法做嗎?

謝謝你熱心的回答!!
hello everybody^^
c9002003 wrote:
原來是這樣子阿~~~...(恕刪)

你說的沒錯,就依照這樣去修改即可.
c9002003 wrote:
我希望我的nowscreen只顯示月曆就好不要show出代辦事項, 這樣有辦法做嗎?...(恕刪)

在now screen頁面,如果是專業模式,在時間下面,會動態顯示鬧鐘,代辦約會及行事曆,如果你只想要顯示行事曆而已,請按照下列步驟修改
1.將qa_layouts.dat解壓縮,取出LockScreen.xml.

2.開啟LockScreen.xml,找到AdvancedCalendar定義class的地方,如下
<Plugin Class="Spb.LSP.AdvancedCalendar" Name="Calendar">....... </Plugin>
這個位置的前後,你看到的都是<Plugin Class=".......開頭的程式碼,這些都是定義class,請將上面這一段AdvancedCalendar定義,往前移動到最前面位置,但是如果你有看到定義背景("Spb.LSP.GradBackground"或"Spb.LSP.SimpleBackgrd")的class,請放到這幾個背景class的後面.

也就是說,AdvancedCalendar前面只有背景class的定義,其他class的定義,請全部都放到AdvancedCalendar定義的後面.

3.請找到"<Layout Name="240x320-Detailed">....."這個位置,再往下找到裡面定義的這一段程式碼
<Plugin Name="Calendar" Skin="qp_calendar" DoubleSkin="vp_calendar">
<BoundRect X="0" Y="167" Width="240" Height="105"/>
</Plugin>
請將Height的數值改為1000, 將Y的數值減900,修改後就變成下面的數值
<Plugin Name="Calendar" Skin="qp_calendar" DoubleSkin="vp_calendar">
<BoundRect X="0" Y="-733" Width="240" Height="1000"/>
</Plugin>

註: 你的主題的Y數值,可能跟我上例不一樣,請用你實際的數值減900,得到的數值,就是Y要修改的數值.

4.請再找到"<Layout Name="320X240-Detailed">....."這個位置,同第3步驟的方法,修改"<Plugin Name="Calendar"......"裡面的Height及Y數值.

5.這樣就修改完畢,請存檔,將修改後的LockScreen.xml,取代原來qa_layouts.dat裡面的LockScreen.xml.

6.將修改後的qa_layouts.dat,複製到你的手機mobile shell的安裝資料夾內,將原來的qa_layouts.dat檔案覆蓋掉.

7.重新開機,大功告成.
成功啦!! 樓主真的很精通mobile shell阿~~~

之前我亂改有成功過一次只顯示行事曆不顯示代辦事項,

但是真的是亂改改出來的@@ 不是很懂其原理~~~

但是這樣我又攙生了一些新的問題@@

1. 為什麼要-900阿?? 還有x,y,width,hight不是指圖檔的左上角座標(x,Y)以及圖檔的寬和高(width,hight)嗎??

那為什麼可以填寫負的值阿?? 這樣不就會跑到240x400以外(無法顯示在touch panel上)了嗎?

2. 有時候我想用加入格線來分開( <Plugin Name="Line3" ID="0"> ), 但是卻跑出其他的圖檔@@

這是和這個函數下面呼叫的int value有關是嗎?? 所以我必須要用singleline才是分隔線是嗎?


不好意思我的問題真的很多@@ 可是你都還有辦法幫我解決@@ 真是太強了~~~
hello everybody^^
c9002003 wrote:
成功啦!! 樓主真...1. 為什麼要-900阿?? 還有x,y,width,hight不是指圖檔的左上角座標(x,Y)以及圖檔的寬和高(width,hight)嗎??那為什麼可以填寫負的值阿?? 這樣不就會跑到240x400以外(無法顯示在touch panel上)了嗎?.....(恕刪)

原理其實很簡單,AdvancedCalendar的內容,會顯示鬧鐘,待辦約會及行事曆三種資料,他會動態改變,沒有設定鬧鐘時,鬧鐘資料就不會顯示出來,沒有待辦約會,待辦約會資料也不會顯示出來,當待辦約會越多,可顯示的空間被擠壓,所以行事曆所能顯示的週數就越少. 但是,不管你將AdvancedCalendar的高度(Height)設為多大的值,最多只能顯示五週的行事曆資料. 對於QVGA的解析度,保留100點的高度,剛好可以顯示五週的行事曆資料.

當你將AdvancedCalendar的高度值設比較大時,mobile shell將會從最上面開始顯示鬧鐘,然後接著顯示待辦約會,下面若有多餘的高度空間,並不會馬上接著顯示行事曆資料,而是將行事曆資料顯示在你所設定高度的最下面.也就是說,在待辦約會與行事曆中間,會留有一段空白.

了解上面的原理,只要想辦法讓鬧鐘及待辦約會顯示在螢幕以外的位置,而行事曆顯示在螢幕裡面的位置,就達到我們想要只顯示行事曆的目的了.

原本你的主題讓行事曆從 Y 的位置開始顯示,剛才說過,顯示五週行事曆需要100點的高度,所以行事曆底部的位置座標為Y+100,我將AdvancedCalendar的高度設定一個很大值為1000,所以AdvancedCalendar的頂部位置座標為(Y+100)-1000,也就是Y-900

我們來驗證一下結果,你的手機最上面第一行的Y座標值從0開始,mobile shell會將鬧鐘及待辦約會從(Y-900)位置開始顯示,是一個很大的負數值,已經超過螢幕上面,所以就看不到了.而行事曆會從Y位置開始顯示,原本的Y就是正數,所以會顯示在螢幕上,而我們也預留100點的高度,所以就可以看到完整的五週行事曆的資料了.

c9002003 wrote:
2. 有時候我想用加入格線來分開( <Plugin Name="Line3" ID="0"> ), 但是卻跑出其他的圖檔@@ 這是和這個函數下面呼叫的int value有關是嗎?? 所以我必須要用singleline才是分隔線是嗎?

沒頭沒尾的,不是很懂你的意思,不過要更正你一個觀念,( <Plugin Name="Line3" ID="0"> )並不是什麼指令,Line3到底代表什麼東西,在前面一定會找到他的class定義,如下:
<Plugin Class="Spb.LSP.xxxx" Name="Line3">....... </Plugin>
class定義只會出現一次,之後就可以重複使用,所以你可能會看到出現好幾次的<Plugin Name="Line3"....,它的下面會出現一些參數需要設定,例如Line3的X,Y座標,寬度及高度....等等,Line3會有哪些參數可以設定,端看它被定義成什麼class,不同的 class,有不同的參數.
只能說,大哥您太利害了!!真的是偶像~~
ok 我了解你的意思了!! 原來他的做標是這樣子做的!!

非常的謝謝你解決了我的疑惑! 現在就是慢慢的試試看哪些class是在做分隔線了~~~

thank you~~~
hello everybody^^
大大你好,我使用的是HTC CRUISE,我現在用的主題是Iphone With Style II (Black),
然後我有使用SPD DIARY,我想請教的是有辦法在第二頁的地方把SPD DIARY的行事曆顯示出來嗎?
或是可以把SPD DIARY的按鈕顯示出來。
溺水魚 wrote:
大大你好,我使用的是...我有使用SPD DIARY,我想請教的是有辦法在第二頁的地方把SPD DIARY的行事曆顯示出來嗎?或是可以把SPD DIARY的按鈕顯示出來。.....(恕刪)

這個問題我在201樓已經回答過了,目前百分百確定做不到.
火爆牛 wrote:
附件裡面是我現在PDA裡面的截圖,我主題是使用SPB Mobile Shell 2.1.2 版本,而第2頁有上網爬文改了9宮格,頁面也變成九宮格了,但是發現16頁聯絡人一直沒辦法修改成功,懇求大大幫助..(我附件裡面有把九宮格的qa_layouts檔案放上去)感謝您囉~~!!...(恕刪)

你使用mobile shell安裝後的標準主題,然後將原本第二頁(MRU+六宮格),改成九宮格,這部份你已經成功了,然後希望再將第三頁Speed Dial改成16頁聯絡人,我已經幫你修改完畢,請用下面的qa_layouts.dat覆蓋.

附加壓縮檔: qa_layouts.dat

除了qa_layouts.dat之外,你還要覆蓋另外兩個檔案(qp_bkg_now.dat及ql_bkg_now.dat)才可以,請到第一頁下載[標準16頁聯絡人覆蓋檔],解開後可以找到這兩個檔案,你一定忘了覆蓋這兩個檔案. (註:若是VGA版本,這兩個檔名開頭為v,而不是q)
  • 37
內文搜尋
X
評分
評分
複製連結
請輸入您要前往的頁數(1 ~ 37)
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?