| | |
| | | frameTemp.Width = ControlCommonResourse.XXLeft / 2;
|
| | | scrolContr.AddChidren(frameTemp);
|
| | |
|
| | | int defultIndex = 0;
|
| | | var btnTempWidth = new ButtonBase();
|
| | | btnTempWidth.TextSize = 12;
|
| | | if (this.dicRoom != null)
|
| | | {
|
| | | //初始化房间模式的控件
|
| | |
| | | {
|
| | | //初始值
|
| | | oldSelectKeys = keys;
|
| | | defultIndex = keys;
|
| | | }
|
| | | this.DoInitControl(scrolContr, keys, dicRoom[keys].Name);
|
| | |
|
| | | //计算字符的真实宽度
|
| | | btnTempWidth.Text = dicRoom[keys].Name;
|
| | | this.DoInitControl(scrolContr, keys, dicRoom[keys].Name, btnTempWidth.GetRealWidthByText());
|
| | | }
|
| | | }
|
| | | else
|
| | |
| | | {
|
| | | //初始值
|
| | | oldSelectKeys = keys;
|
| | | defultIndex = index;
|
| | | }
|
| | | this.DoInitControl(scrolContr, keys, Language.StringByID(keys));
|
| | | //计算字符的真实宽度
|
| | | btnTempWidth.Text = Language.StringByID(keys);
|
| | | this.DoInitControl(scrolContr, keys, btnTempWidth.Text, btnTempWidth.GetRealWidthByText());
|
| | | index++;
|
| | | }
|
| | | }
|
| | | //让控件滑动到指定的索引位置
|
| | | scrolContr.ScrollToViewIndex(defultIndex);
|
| | | scrolContr.ScrollToViewIndex(oldSelectKeys + 1);
|
| | | }
|
| | |
|
| | | /// <summary>
|
| | |
| | | /// <param name="scrolContr">列表控件</param>
|
| | | /// <param name="keys">字典的主键</param>
|
| | | /// <param name="text">显示文本</param>
|
| | | private void DoInitControl(HorizontalScrolViewLayout scrolContr, int keys, string text)
|
| | | /// <param name="textWidth">文本真实宽度</param>
|
| | | private void DoInitControl(HorizontalScrolViewLayout scrolContr, int keys, string text, int textWidth)
|
| | | {
|
| | | //带底图控件的最小宽度
|
| | | int minWidth = Application.GetRealWidth(255);
|
| | | //带底图控件的真实宽度 <文字的宽度的计算 frameBack.Width - (int)(frameBack.Height * 0.47)>
|
| | | int realWidth = textWidth + (int)(Application.GetRealHeight(159) * 0.47);
|
| | | if (realWidth < minWidth)
|
| | | {
|
| | | realWidth = minWidth;
|
| | | }
|
| | |
|
| | | //带图片的
|
| | | var frameBack = new FrameLayoutControl();
|
| | | frameBack.UseClickStatu = false;
|
| | | frameBack.Gravity = Gravity.Center;
|
| | | frameBack.Height = Application.GetRealHeight(159);
|
| | | frameBack.Width = Application.GetRealWidth(255);
|
| | | frameBack.Width = realWidth;
|
| | | if (oldSelectKeys == keys)
|
| | | {
|
| | | frameBack.BackgroundImagePath = "Item/RoomIconBackgroundSelected.png";
|
| | |
| | | }
|
| | | scrolContr.AddChidren(frameBack);
|
| | | //文字
|
| | | var btnText = new NormalViewControl(frameBack.Width - (int)(frameBack.Height * 0.47), frameBack.Height, false);
|
| | | var btnText = new NormalViewControl(textWidth, frameBack.Height, false);
|
| | | btnText.Gravity = Gravity.CenterHorizontal;
|
| | | btnText.Text = text;
|
| | | btnText.TextSize = 12;
|
| | |
| | | }
|
| | | else if (keys != string.Empty)
|
| | | {
|
| | | int i = 0;
|
| | | int textId = Convert.ToInt32(keys);
|
| | | if (dicDevice.ContainsKey(textId) == true)
|
| | | foreach (int rId in dicDevice.Keys)
|
| | | {
|
| | | oldSelectKeys = textId;
|
| | | if (rId == textId)
|
| | | {
|
| | | oldSelectKeys = i;
|
| | | break;
|
| | | }
|
| | | i++;
|
| | | }
|
| | | }
|
| | | }
|