类似微信的文本输入框

本文内容比较简单,给大家介绍一下微信的文本输入框是如何实现的,其实那只是个普通的文本框设了一个特殊的背景而已。具体微信怎么实现的,大家可以反编译下,这里介绍下如何实现这个背景。

可以先看下文章末尾的效果图,里面的文本框是不是和微信的比较像啊,下面说下实现思想:

首先,这种效果用.9图我不知道是否可以做出来。如果不用.9图的话,那就只能用drawable来写,这种drawable有点复杂,可以采用LayerList来实现,我的思想如下:

分三层实现,这里假设activity的背景是白色,第一层也(就是最底层)是绿色;第二次是白色,但是距离底部有一段小偏移,目的是为了做出文本框两边的小勾;第三层也是白色,但是它距离底部和左右两边都有一定距离。通过三层配合,即可实现这种效果,巧妙之处大家可以细细体会。xml如下:

  1. <?xml version=“1.0” encoding=“utf-8”?>  
  2. <layer-list xmlns:android=“http://schemas.android.com/apk/res/android” >  
  3.   
  4.     <item>  
  5.         <shape android:shape=“rectangle” >  
  6.             <solid android:color=“#0ac39e” />  
  7.         </shape>  
  8.     </item>  
  9.   
  10.     <item android:bottom=“6dp”>  
  11.         <shape android:shape=“rectangle” >  
  12.             <solid android:color=“#ffffff” />  
  13.         </shape>  
  14.     </item>  
  15.   
  16.     <item  
  17.         android:bottom=“1dp”  
  18.         android:left=“1dp”  
  19.         android:right=“1dp”>  
  20.         <shape android:shape=“rectangle” >  
  21.             <solid android:color=“#ffffff” />  
  22.         </shape>  
  23.     </item>  
  24.   
  25. </layer-list>  
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

    <item>
        <shape android:shape="rectangle" >
            <solid android:color="#0ac39e" />
        </shape>
    </item>

    <item android:bottom="6dp">
        <shape android:shape="rectangle" >
            <solid android:color="#ffffff" />
        </shape>
    </item>

    <item
        android:bottom="1dp"
        android:left="1dp"
        android:right="1dp">
        <shape android:shape="rectangle" >
            <solid android:color="#ffffff" />
        </shape>
    </item>

</layer-list>
然后,将xml设置为文本框的背景即可。需要注意的是,这种方式没法一个xml drawable同时用在各种不同颜色的背景下。


转自:https://blog.csdn.net/singwhatiwanna/article/details/42215847

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: WinForm是一种基于Windows操作系统的开发平台,支持基于Windows桌面环境的应用程序开发,而微信聊天窗口是一种常见的聊天界面控件。那么有哪些类似微信聊天窗口的控件WinForm的呢?以下是几种常见的控件: 1. RichTextBox控件:RichTextBox控件是WinForm中常用的文本编辑控件,可以用来显示和编辑富文本内容,比如支持字体、颜色、样式等。通过RichTextBox控件的属性和事件可以实现类似微信聊天界面的输入框和消息显示区域。 2. ListView控件:ListView控件是WinForm中显示数据的控件,可以用于显示多列数据和图片,支持丰富的视图模式和样式选择。通过自定义ListView控件的列样式、行样式和鼠标事件实现类似微信聊天消息列表的显示效果。 3. DataGridView控件:DataGridView控件是WinForm中的表格控件,支持显示大量数据和交互编辑。通过自定义DataGridView控件的列样式和行样式可以实现类似微信聊天消息列表的显示效果,同时DataGridView控件支持和数据源绑定,可以方便地管理和修改数据。 4. Panel控件:Panel控件是WinForm中的容器控件,支持排列其它控件和设置背景图片。通过Panel控件的自定义绘制和鼠标事件可以实现类似微信聊天消息区域的显示效果。 这些控件都可以在WinForm开发中使用,通过组合和自定义可以实现类似微信聊天窗口的功能。 ### 回答2: Winform是一种基于Windows操作系统的可视化开发工具,可以使用C#、VB.NET、C++等编程语言来创建Windows应用程序。在这些应用程序中,常常需要使用到类似微信聊天窗口的控件。以下是几种类似微信聊天窗口的控件: 1. RichTextBox控件。这是Winform中一个常用的文本编辑控件,可以实现文本显示、编辑、格式化等功能。通过设置文本颜色、字体、大小、对齐方式等属性,可以实现类似微信聊天窗口的样式。 2. ListView控件。这是一个用于显示列表数据的控件,在Winform中使用较为广泛。通过设置列表项的背景色、字体、大小等属性,可以实现类似微信聊天窗口的样式。 3. Label控件。这是Winform中简单的文本标签控件,通常用于显示较短的文本信息。通过设置控件背景色、字体、边框等属性,可以实现类似微信聊天窗口的样式。 4. Panel控件。这是Winform中用于容纳其他控件的容器控件,可以自由设置背景色、边框、大小等属性,用于实现类似微信聊天窗口的布局。 5. FlowLayoutPanel控件。这是Winform中用于自适应布局的面板控件,可以实现流式布局。通过设置其中的子控件的大小、背景色、边框等属性,可以实现类似微信聊天窗口的样式。 以上是常用的几种类似微信聊天窗口的控件,它们各自有不同的特点和用途。在Winform开发中,我们可以根据具体需求选择合适的控件来实现所需的功能和界面。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值