完全用代码生成视图UI

/*-------------------完全以代码的形式生成视图------------------------------------*/
			LinearLayout linearLayout = new LinearLayout(Tab1.this);// 创建LinearLayout
			linearLayout.setOrientation(LinearLayout.HORIZONTAL);
			linearLayout.setGravity(Gravity.CENTER);

			ImageView imageView = new ImageView(Tab1.this); // 创建ImageView
			imageView.setAdjustViewBounds(true);
			imageView.setImageResource(images[position]); // 设置ImageView显示的内容

			TextView textView = new TextView(Tab1.this);// 创建TextextViewiew
			textView.setPadding(10, 0, 0, 0);
			textView.setLayoutParams(new LinearLayout.LayoutParams(
					LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
			textView.setTextAppearance(Tab1.this, R.style.title);
			textView.setText(items[position]); // 设置TextextViewiew显示的内容

			linearLayout.addView(imageView); // 将ImageView添加到线性布局中
			linearLayout.addView(textView);// 将textView添加到线性布局中
			return linearLayout;

 

/*---------------------更新心情----------------------------------*/
					// 将一个xml文件渲染成view,并设置成对话框的view
					LayoutInflater inflate = LayoutInflater.from(Tab1.this);
					tab1_1 = inflate.inflate(R.layout.tab1_1, null);

					new AlertDialog.Builder(Tab1.this)// 以弹出式对话框的形式更新心情
							.setTitle("更新心情")// 标题
							.setIcon(R.drawable.p_status)// 图标
							.setView(tab1_1)// 设置成对话框的view
							.setPositiveButton("发表",
									new DialogInterface.OnClickListener() {
										@Override
										public void onClick(
												DialogInterface dialog,
												int which) {
											progressDialog = ProgressDialog
													.show(Tab1.this, "请稍候",
															"正在更新心情...", true,
															true);
											updateStatus();// 提交服务器
										}
									})
							//
							.setNegativeButton("取消",
									new DialogInterface.OnClickListener() {
										@Override
										public void onClick(
												DialogInterface dialog,
												int which) {
										}
									}).show();
					/*--------------------------------------------------------------*/


    etStatus = (EditText) tab1_1.findViewById(R.id.editstatus);

	// 方法:连接服务器,更新心情
	public void updateStatus() {
		new Thread() {
			public void run() {
				Looper.prepare();
				etStatus = (EditText) tab1_1.findViewById(R.id.editstatus);
				String status = etStatus.getEditableText().toString().trim(); // 获得心情内容
				if (status.equals("")) { // 如果输入的心情为空
					progressDialog.dismiss();
					Toast.makeText(Tab1.this, "请输入更新的心情", 2000).show();// 输出提示
					Looper.loop();
					return;
				}
				String message = "<#NEW_STATUS#>" + status + "|" + uno;
				if (connector == null) {
					connector = new Connector(SERVER_ADDRESS, SERVER_PORT);
				}
				try {
					connector.dout.writeUTF(message); // 向服务器发送更新的心情
					progressDialog = ProgressDialog.show(Tab1.this, "正在连接网络",
							"请稍候", true);
					String reply = connector.din.readUTF(); // 从服务器返回的回复
					progressDialog.dismiss();
					if (reply.equals("<#STATUS_SUCCESS#>")) { // 心情更新成功
						Toast.makeText(Tab1.this, "心情更新成功!", 2000).show();
						Looper.loop();
					} else { // 心情更新失败
						Toast.makeText(Tab1.this, "心情更新失败!", 2000).show();
						Looper.loop();
					}
				} catch (Exception e) {
					e.printStackTrace();
				}
				Looper.myLooper().quit();
			}
		}.start();
	}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值