2016-02-17 91 views
0

我已經創建了一個TableView,然後創建一個爲我所需的儘可能多的TableViewRow。該TableViewRow創建爲便接踵而來:Android上的鈦項目中的TableViewRow

var row = Ti.UI.createTableViewRow({ 
    selectBackgoundColor : 'transparent', 
    height : '35%' 
}); 

當我跑我的IOS代碼它的作品完美,但在Android中,我需要做的改變「高度:'35%'」來表示不喜歡%「高度的值:121「。

爲什麼「height:'35%'」在Android中不起作用?

+0

請刪除你的第二個問題,並提出一個單獨的問題:) –

回答

4

高度35%在Android上不起作用,因爲Android不知道100%使用什麼。有幾個解決方案可以使用。

  1. 根據您知道的父母的高度或設備高度計算35%。你可以使用這個來正確計算它。

從deviceHeight可以方便地計算35%

var deviceHeight = Ti.Platform.displayCaps.platformHeight; 

if (OS_ANDROID){ 
    deviceHeight = Math.round(Ti.Platform.displayCaps.platformHeight/Ti.Platform.displayCaps.logicalDensityFactor); 
} 

var thirtyFive = deviceHeight * 0.35; 
  • 使用實際的固定高度。跨應用程序更容易,更多的consistend。
  • +0

    不過,我想不出爲什麼Android不能像iOS那樣採取父母高度的原因。這可能會產生很好的功能請求。請檢查它是否已經在[Appcelerator JIRA](https://jira.appcelerator.org/)上被請求。如果沒有,請創建一張票,鏈接到此問題,並在票中提供完整的說明。不要忘記在這裏放下一張票的鏈接,以便其他人可以和你一起觀看。 –