当前位置:网站首页>Live broadcast system code, custom soft keyboard style: three kinds of switching: letters, numbers and punctuation
Live broadcast system code, custom soft keyboard style: three kinds of switching: letters, numbers and punctuation
2022-07-06 00:52:00 【Cloudleopard network technology】
Live broadcast system code , Customize the soft keyboard style : Letter 、 Numbers 、 Three kinds of punctuation switching
Call the soft keyboard when necessary activity_mian.xml Add keyboard control in
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal">
<android.inputmethodservice.KeyboardView
android:id="@+id/keyboard_view"
android:shadowRadius="0.0"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:keyPreviewLayout="@layout/key_preview_layout"
android:background="#D6D9DE"
android:keyBackground="@drawable/btn_keyboard_key"
android:keyTextColor="#747474"
android:keyTextSize="36dp"
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:paddingLeft="95dp"
android:paddingRight="95dp"
android:visibility="gone"
/>
</RelativeLayout>
1.1
android:keyPreviewLayout="@layout/key_preview_layout" This is the style of pop-up box when long pressing the keyboard , If you don't write , System default , Sometimes the default will not be clear
key_preview_layout.xml:
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="40sp"
android:textColor="@android:color/white"
android:gravity="center"
android:background="#80929299"/>
1.2
android:keyBackground="@drawable/btn_keyboard_key" Shape of key
btn_keyboard_key.xml:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#FFFFFFFF"/>
<corners android:topLeftRadius="8dip"
android:topRightRadius="8dip"
android:bottomRightRadius="8dip"
android:bottomLeftRadius="8dip" />
</shape>
2. And then in res New folder under folder , There are three new files , That is, the layout of each keyboard style is qwerty.xml, symbols.xml, punctuate.xml
Alphabetic keyboard -qwerty.xml:
<?xml version="1.0" encoding="UTF-8"?>
<Keyboard android:keyWidth="100dp" android:keyHeight="60dp"
android:horizontalGap="10dp" android:verticalGap="15dp"
xmlns:android="http://schemas.android.com/apk/res/android">
<Row>
<Key android:codes="113" android:keyEdgeFlags="left"
android:keyLabel="q" />
<Key android:codes="119" android:keyLabel="w" />
<Key android:codes="101" android:keyLabel="e" />
<Key android:codes="114" android:keyLabel="r" />
<Key android:codes="116" android:keyLabel="t" />
<Key android:codes="121" android:keyLabel="y" />
<Key android:codes="117" android:keyLabel="u" />
<Key android:codes="105" android:keyLabel="i" />
<Key android:codes="111" android:keyLabel="o" />
<Key android:codes="112" android:keyEdgeFlags="right"
android:keyLabel="p" />
</Row>
<Row>
<Key android:horizontalGap="4.999995%p" android:codes="97"
android:keyEdgeFlags="left" android:keyLabel="a" />
<Key android:codes="115" android:keyLabel="s" />
<Key android:codes="100" android:keyLabel="d" />
<Key android:codes="102" android:keyLabel="f" />
<Key android:codes="103" android:keyLabel="g" />
<Key android:codes="104" android:keyLabel="h" />
<Key android:codes="106" android:keyLabel="j" />
<Key android:codes="107" android:keyLabel="k" />
<Key android:codes="108" android:keyEdgeFlags="right"
android:keyLabel="l" />
</Row>
<Row>
<Key android:keyWidth="110dp" android:codes="-1"
android:keyEdgeFlags="left" android:isModifier="true"
android:horizontalGap="33dp"
android:isSticky="true" android:keyIcon="@drawable/shift" />
<Key android:codes="122" android:keyLabel="z" android:horizontalGap="30dp"/>
<Key android:codes="120" android:keyLabel="x" />
<Key android:codes="99" android:keyLabel="c" />
<Key android:codes="118" android:keyLabel="v" />
<Key android:codes="98" android:keyLabel="b" />
<Key android:codes="110" android:keyLabel="n" />
<Key android:codes="109" android:keyLabel="m" />
<Key android:keyWidth="110dp" android:codes="-5"
android:horizontalGap="30dp"
android:keyEdgeFlags="right" android:isRepeatable="true"
android:keyIcon="@drawable/delete" />
</Row>
<Row android:rowEdgeFlags="bottom">
<Key android:keyWidth="110dp" android:codes="-2" android:horizontalGap="43dp"
android:keyIcon="@drawable/number" />
<Key android:keyWidth="110dp" android:codes="46"
android:keyIcon="@drawable/point" />
<Key android:keyWidth="540dp" android:codes="32"
android:isRepeatable="true" android:keyIcon="@drawable/space" />
<Key android:keyWidth="110dp" android:codes="47"
android:keyIcon="@drawable/gang"/>
<Key android:keyWidth="110dp" android:codes="-3"
android:keyEdgeFlags="right" android:keyIcon="@drawable/complete" />
</Row>
</Keyboard>
The above is the live broadcast system code , Customize the soft keyboard style : Letter 、 Numbers 、 Three kinds of punctuation switching , More content welcome to follow the article
边栏推荐
- Power query data format conversion, Split Merge extraction, delete duplicates, delete errors, transpose and reverse, perspective and reverse perspective
- View class diagram in idea
- The growth path of test / development programmers, the problem of thinking about the overall situation
- MySQL storage engine
- Beginner redis
- 激动人心,2022开放原子全球开源峰会报名火热开启
- Kotlin core programming - algebraic data types and pattern matching (3)
- anconda下载+添加清华+tensorflow 安装+No module named ‘tensorflow‘+KernelRestarter: restart failed,内核重启失败
- 详细页返回列表保留原来滚动条所在位置
- Promise
猜你喜欢
VSphere implements virtual machine migration
Classic CTF topic about FTP protocol
SAP Spartacus home 页面读取 product 数据的请求的 population 逻辑
Problems and solutions of converting date into specified string in date class
2022-02-13 work record -- PHP parsing rich text
Leetcode:20220213 week race (less bugs, top 10% 555)
Beginner redis
How to use the flutter framework to develop and run small programs
Browser reflow and redraw
Data analysis thinking analysis methods and business knowledge - analysis methods (III)
随机推荐
测试/开发程序员的成长路线,全局思考问题的问题......
[groovy] XML serialization (use markupbuilder to generate XML data | set XML tag content | set XML tag attributes)
After 95, the CV engineer posted the payroll and made up this. It's really fragrant
Construction plan of Zhuhai food physical and chemical testing laboratory
Folding and sinking sand -- weekly record of ETF
After Luke zettlemoyer, head of meta AI Seattle research | trillion parameters, will the large model continue to grow?
MIT doctoral thesis | robust and reliable intelligent system using neural symbol learning
Spark SQL空值Null,NaN判断和处理
Set data real-time update during MDK debug
Ffmpeg captures RTSP images for image analysis
cf:C. The Third Problem【关于排列这件事】
golang mqtt/stomp/nats/amqp
Novice entry depth learning | 3-6: optimizer optimizers
The relationship between FPGA internal hardware structure and code
View class diagram in idea
Leetcode Fibonacci sequence
Extension and application of timestamp
从 1.5 开始搭建一个微服务框架——调用链追踪 traceId
State mode design procedure: Heroes in the game can rest, defend, attack normally and attack skills according to different physical strength values.
Browser reflow and redraw