zoukankan      html  css  js  c++  java
  • 实现聊天室

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">
    
        <TextView
            android:id="@+id/tv_control"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="20dp"
            android:gravity="center"
            android:text="聊天室效果,点击添加聊天记录,长按删除聊天记录"/>
    
    
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="200dp"
            android:orientation="vertical">
    
            <TextView
                android:id="@+id/tv_bbs"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_marginTop="20dp"
                android:scrollbars="vertical"
                android:textColor="#000000"
                android:textSize="17sp"
                android:maxLines="8"
                android:lines="8"
                android:gravity="bottom|left"
                />
    
    
        </LinearLayout>
    </LinearLayout>
    package com.example.administrator.myapplication52;
    
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.text.format.DateUtils;
    import android.text.method.ScrollingMovementMethod;
    import android.view.View;
    import android.widget.TextView;
    
    import com.example.junior.util.DateUtil;
    
    public class MainActivity52 extends AppCompatActivity implements View.OnClickListener,View.OnLongClickListener {
    
        private TextView tv_bbs;
        private TextView tv_control;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.layout);
    
            tv_control = (TextView)this.findViewById(R.id.tv_control);
            tv_control.setOnClickListener(this);
            tv_control.setOnLongClickListener(this);
    
            tv_bbs = (TextView)this.findViewById(R.id.tv_bbs);
            tv_bbs.setOnClickListener(this);
            tv_bbs.setOnLongClickListener(this);
            tv_bbs.setMovementMethod(new ScrollingMovementMethod());
    
        }
    
        private String[] mChatStr={"你吃饭了吗?","今天天气真好呀!","我中奖了","我们去看电影吧","晚上干什么好呢?"};
    
        @Override
        public void onClick(View v)
        {
            if((v.getId() == R.id.tv_control) ||(v.getId() == R.id.tv_bbs))
            {
                int random = (int)(Math.random()*10)%5;
    
                // 保留当前字符串,并添加回车,再添加一个新的字符串
                //如果太多,自动滚动
                String newStr = String.format("%s
    %s%s",tv_bbs.getText(), DateUtil.getNowTime(),mChatStr[random]);
                tv_bbs.setText(newStr);
            }
        }
    
        @Override
        public boolean onLongClick(View v) {
    
            tv_bbs.setText("");
    
            return true;
        }
    }
    package com.example.junior.util;
    
    import android.annotation.SuppressLint;
    
    import java.text.DateFormat;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    
    /**
     * Created by ouyangshen on 2016/9/14.
     */
    public class DateUtil {
        @SuppressLint("SimpleDateFormat")
        public static String getNowDateTime() {
            SimpleDateFormat s_format = new SimpleDateFormat("yyyyMMddhhmmss");
            return s_format.format(new Date());
        }
    
        @SuppressLint("SimpleDateFormat")
        public static String getNowTime() {
            SimpleDateFormat s_format = new SimpleDateFormat("HH:mm:ss");
            return s_format.format(new Date());
        }
    
    }

  • 相关阅读:
    CentOS 基本设置
    CentOS 7 编译安装 Code::Blocks
    Java和C/C++进行DES/AES密文传输(借鉴)
    VS 2010 编译 Openssl
    Crypto++ 动态链接编译与实例测试
    c++11-bind的用法
    模板编程-迭代器
    LeetCode-Swap Nodes in Pairs
    LeetCode-Generate Parentheses
    Leetcode-Letter Combinations of a Phone Number
  • 原文地址:https://www.cnblogs.com/qqhfeng/p/7368523.html
Copyright © 2011-2022 走看看