Android 动态增加控件
2010-08-21 06:34:00 来源:WEB开发网64. }
65.
66. /**
67. * 获取当前聊天对白的底色值
68. * @return 当前聊天对白的底色值
69. */
70. private int getCurrColor()
71. {
72. return bg[ (++bgIndex)% bg.length ];
73. }
74.
75. /**
76. * 动态增加一个聊天内容
77. * 这里为了简化编程把 某人说 和 内容放到一个TextView中,可以根据设计文档拆成2个TextView分别显示,设置字体等
78. * @param layout TextView 控件欲添加到的目标layout
79. * @param context 构建View控件的必须参数 既View控件的环境
80. * @param bgColur TextView 控件的背景色
81. * @param MSG TextView 控件要现实的文本内容
82. */
83. private void setSendMsg(LinearLayout layout, Context context, int bgColur, String MSG)
84. {
85. TextView tv = new TextView(context); //普通聊天对话
86. //获取一个全局的日历实例,用于获取当前系统时间并格式化成小时:分钟形式,仅用于测试,这里的时间应该是由其他程序提供
87. tv.setText( "某人 说: ["+DateFormat.format( "kk:mm" , Calendar.getInstance())+"] "+MSG );
88. tv.setBackgroundColor( bgColur );
89. layout.addView( tv );
90. }
91.
92. /**
93. * 动态增加一个发送文件的会话条目
94. * 这里因为是发送进度条与取消按钮的水平对其方式,所以需要增加一个LinearLayout
95. * @param layout 欲添加到的目标layout
96. * @param context 构建 View控件的必须参数 既View控件的环境
97. * @param bgColur 控件的背景色
98. * @param MSG 控件要现实的文本内容
99. */
100. private void setSendFile(LinearLayout layout, Context context, int bgColur, String fileName)
101. {
102. //把 某人说 [时间]
103. //要发送的文件信息 全都交给 setSendMsg 绘制吧!
104. setSendMsg( layout, context, bgColur, "正在发送"+fileName );
更多精彩
赞助商链接