我需要使用ListView1.TwoLinesAndBitmap
我在垂直居中设置lable,SecondLabel,imageview时遇到了奇怪的问题
正如我看到的所有示例一样,将itemheight设置为类似于: 60dip
但是当我在一些高分辨率和高密度设备上测试listview时,比如联想10英寸平板电脑,itemheight的高度会非常小
因此,我决定使用Y的百分比作为项目高度
我的代码如下:*
ListView1.TwoLinesAndBitmap.ItemHeight = 10%y
ListView1.TwoLinesAndBitmap.ImageView.Height = ListView1.TwoLinesAndBitmap.ItemHeight - 20dip
ListView1.TwoLinesAndBitmap.ImageView.Width = ListView1.TwoLinesAndBitmap.ImageView.Height
ListView1.TwoLinesAndBitmap.ImageView.Gravity = Gravity.CENTER
ListView1.TwoLinesAndBitmap.Label.TextColor = Colors.Black
ListView1.TwoLinesAndBitmap.Label.Left = ListView1.Left
ListView1.TwoLinesAndBitmap.Label.Width = ListView1.Width
ListView1.TwoLinesAndBitmap.Label.Height = ListView1.TwoLinesLayout.ItemHeight/2
ListView1.TwoLinesAndBitmap.Label.Gravity = Gravity.CENTER + Gravity.CENTER_VERTICAL
ListView1.TwoLinesAndBitmap.Label.TextSize = ListView1.TwoLinesAndBitmap.ItemHeight * 170/1000dip
ListView1.TwoLinesAndBitmap.SecondLabel.Left = ListView1.Left
ListView1.TwoLinesAndBitmap.SecondLabel.Width = ListView1.Width
ListView1.TwoLinesAndBitmap.SecondLabel.Height = ListView1.TwoLinesLayout.ItemHeight/2
ListView1.TwoLinesAndBitmap.SecondLabel.Gravity = Gravity.CENTER + Gravity.CENTER_VERTICAL
ListView1.TwoLinesAndBitmap.SecondLabel.TextSize = ListView1.TwoLinesAndBitmap.ItemHeight * 150/1000dip我尝试将所有项目垂直居中,但当我附加图像时,所有三个设备( Sony V、Lenovo tablet、AVD )都有问题,而且没有一个加载良好
在索尼V中:-lable加载在顶部,-SecondLabel加载在底部-图像视图不是垂直居中
在联想瑜伽中:-lable加载在顶部,-SecondLabel加载在顶部标签之后-图像视图而不是中心垂直
在avd模拟器中:在顶部加载-lable,从顶部开始留出更好的空间,在底部加载-SecondLabel (0位置) !!
我非常困惑,试图改变各种选择,但根本没有运气。
这是我拍摄的这3款设备的截图:
http://i58.tinypic.com/650k1u.jpg
发布于 2015-05-26 15:26:36
尝试这个替换和添加;
ListView1.TwoLinesAndBitmap.ImageView.Left = (ListView1.Width - ListView1.TwoLinesAndBitmap.ImageView.Width)/2
ListView1.TwoLinesAndBitmap.Label.Left = 0
ListView1.TwoLinesAndBitmap.SecondLabel.Left = 0
ListView1.TwoLinesAndBitmap.SecondLabel.Top = ListView1.TwoLinesLayout.ItemHeight/2https://stackoverflow.com/questions/29894500
复制相似问题