在Textiew中可以通过设置TextView的属性 android:maxEms 和 android:ellipseize 来使过多的文字显示为省略号,但在在EditText中设置只这两个属性则不行,...android默认只有在文字不可编辑的状态下才可以显示这些效果,但是EditText重写了这个属性,使得文字默认都是可以编辑的。...所以若想要呈现TextView的效果,必须加上以下属性 android:editable= "false" 另外EditText不支持跑马等的效果.咱们来看看android源码 override public...cannot use the ellipsize mode TextUtils.TruncateAt.MARQUEE"); } super.setEllipsize(ellipsis); } 如果设置跑马灯效果...AttributeSet) : EditText(context, attrs){ override fun onTouchEvent(event: MotionEvent?)
今天看linux内核驱动的代码,发现一个算法写得挺简单,也有意思。...分享一下我的测试代码: #include typedef int U32 ; U32 String2Dec( const char *pstr ) { char...ch; U32 value; value = 0; //从字符串的第一个字符遍历到'\0' while( *pstr !...//判断字符是否在0-9这个范围 if( ch >= '0' && ch <= '9' ) { //ch-'0'相当于将字符转换为整数
//建议给要分比例的宽度或者高度写成0dp。 2. EditText 输入框,可编辑,可设置软键盘方式。继承自android.widget.TextView,在android.widget包中。...、right、center 等 //是否只在一行内显示全部内容 android:singleLine="true" //true或者false,默认为false //输入内容设置为password..." //在名字叫text1的控件的上边 android:layout_above="@id/text1" 我们需要在Activity中为Button的点击事件注册一个监听器,以下介绍两种方式来实现按钮监听事件...//为button按钮注册监听器,并通过匿名内部类实现 button.setOnClickListener(new OnClickListener() { @Override...ImageButton控件中设置按钮中显示的图片可以通过android:src属性来设置。也可以通过setImageResource(int)来设置。
TextView 继承自View,父类型强制转换成子类型 Button bt_dail=(Button) findViewById(R.id.bt_dail); //给按钮设置点击事件...public void onClick(View v) { // TODO Auto-generated method stub //找到输入框,内部类调用外部类的方法...-- [android:id="@+id/my_number" R文件中增加一个id] --> EditText android:id="@+id/et_number"...-- [android:layout_below="@id/my_number":位于此id控件的下面,@idR文件这的这个id] --> 的命名,button bt_xxx,edittext et_xxx] --> <Button android:id="@+id/bt_dail" android
·匿名内部类不能定义任何静态成员、静态方法。 ·匿名内部类不能是public,protected,private,static。 ·只能创建匿名内部类的一个实例。...·一个匿名内部类一定是在new的后面,用其隐含实现一个接口或实现一个类。 ·因匿名内部类为局部内部类,所以局部内部类的所有限制都对其生效。...=”numberDecimal” /> 设置可以编辑和不可编辑状态 在xml中设置Android:editable=”false...“//设置显示在空间上的提示信息 android:numeric=”integer”//设置只能输入整数,如果是小数则是:decimal android:maxLength=”8″ //限制输入长度为8...其中方法的定义为: setTitle设置标题 setIcon设置对话框图标 setMessage简单消息框 setItems设置要在对话框中显示的项目列表 setView设置自定义的对话框样式
分为服务器(网络应用程序)和客户端(网络应用程序),TCP通信过程,首先打开服务器,监听自己的网络通信端口(假设为9000),打开客户端,设置好要连接的ip地址和服务器的网络通信端口(9000),这样服务器一旦监听到网络通信端口有连接...加点功能,点击启动服务器按钮后才启动服务,但是端口被我们定死了,,,,可不好玩,我们就设置连接的端口号为文本框中的端口号; int port =Integer.valueOf(PortText.getText...{ int port =Integer.valueOf(portEditText.getText().toString());//获取portEditText中的端口号...对了有一点说错了是在 android 之TCP客户端编程 上的socket 其实socket这个类可以理解为(只要服务器和客服端建立连接就会建立socket),我们可以通过操作socket类中的方法得到我们想要的东西...{ int port =Integer.valueOf(portEditText.getText().toString());//获取portEditText中的端口号
开发一个简单的拨号器。 开发一个应用的步骤: 小应用的步骤: 1.设计界面 2.activity 3.设计业务层 如果程序比较简单就将代码直接写在activity中 大应用的步骤 1.设计业务层。...是一个接口 * 我们要这个接口的一个实现类,要得到这个接口的实现类的方法有两种,一个是创建一个类 * 实现这个接口,第二种方法就是匿名内部类 */...android:name="android.permission.CALL_PHONE"/> * 那么android还有什么权限设置呢 在这个文件中查看 * android-sdk-windows...//现在添加了拨号权限 然后我们开始拨号 拨号要创建一个名为意图的对象 /** * Intent (动作,数据) 两个参数 * Intent就是将动作和参数交给...Intent.ACTION_CALL,Uri.parse("tel:"+numberString)); /** * 意图对象生成后 要传递给操作系统 执行这个意图 * 内部类访问外部类的实例的方法
/************************2016年4月23日 更新******************************/ 知乎:android开发中,什么时候进行非空判断?...:str; } 我一般用这个方法设值 知乎:Android中setOnClickListener和实现OnClickListener接口的区别?...仗剑行侠: 个人理解,应该没有区别,即便你就是通过匿名内部类实现,你的控件的是否可以用,也是取决于activity的生命周期啊。...,不用每次点击都获取 EditText获取到的值进行trim()去掉空格 判断号码是否为空android提供的工具类 TextUtils.isEmpty(); 提示信息Toast Toast.makeText...,每个按钮都要设置点击事件,其他方法会创建很多内部类,利用这种方法进行判断 //第三种方法,Activity实现接口方法 bt_dail.setOnClickListener(this)
而且 SharePreferences还支持多种不同的数据类型存储,如果存储的数据类型是整型,那么取出来的依然是整型。...将数据存储到 SharedPreferences 中 首先需要获取到SharedPreferences 对象,Android中主要提供了3种方法用于得到 SharedPreferences 的对象。...2.Activity类的getPreferences方法 这个方法和Context中的 getSharedPrefereces() 方法很相似,不过它只接受一个操作模式参数,因为使用这个方法会自动将当前活动得类名作为...这样在登录成功后,调用 ChearBox 的 isChecked() 方法来检查复选框是否被选中,如果被选中了,则表示用户想要记住密码,这时将 remember_password 设置为true,然后把...如果没有被选中,就简单调用一下 clear()方法,将 SharedPreferences 文件中的数据全部清除掉。
而且SharedPreferences还支持多种不同的数据类型存储,如果存储的数据类型是整型,那么读取出来的数据也是整型的;如果存储的数据是一个字符串,那么读取出来的数据仍然是字符串。...实际上,SharedPreferences将保存于APP数据目录下的xml文件中,也就是以XML的格式来保存的。...通过调用 SharedPreferences 的 edit() 方法获取一个Editor实例,用于编辑SharedPreferences的键值(在SharedPreference的源码注释中这样说明:allowing...()来完成更改; 在读操作中,直接调用SharedPreferences的getXXX获取值数据即可。...本文为本人原创文章,同步发布于Titan笔记 Android数据存储方式之SharedPreferences - Titan笔记 https://www.titan6.cn/archives/344.html
文字表述: 事件监听机制中由事件源,事件,事件监听器三类对象组成 处理流程如下: Step 1:为某个事件源(组件)设置一个监听器,用于监听用户操作 Step 2:用户的操作,触发了事件源的监听器 Step...因为外部类不能直接访问用户界面 类中的组件,要通过构造方法将组件传入使用;这样导致的结果就是代码不够简洁!...2.Android回调的事件处理机制详解: 在Android中基于回调的事件处理机制使用场景有两个: 1)自定义view 常见View组件的回调 android为GUI组件提供了一些事件处理的回调方法...(mTextWatcher); 为EditText设置内容变化监听!...: 1.内容变化前 2.内容变化中 3.内容变化后 2.实现EditText的密码可见与不可见 这个也是一个很实用的需求,就是用户点击按钮后可让EditText中的密码可见或者不可见~ @Override
调用ListView对象的setOnItemClickListener()方法,设置条目的点击事件,参数:OnItemClickListener对象 使用匿名内部类实现,重写onClick()方法,传递进来的参数...()方法,返回去数据,参数:响应码,Intent对象 获取Intent对象,new出来 调用Intent对象的putExtra(key,val),把电话放进去 调用finish()方法关闭当前页面 开启这个的...activity使用的是startActivityForResult() 重写onActivityResult()方法,传递进来Intent对象 判断Intent对象是否为null 调用Intent对象的...getStringExtra()方法,获取到电话号码 把电话放在Edittext上,当点击下一步的时候保存到SP中 activity package com.qingguow.mobilesafe;...; import android.os.Bundle; import android.text.TextUtils; import android.view.View; import android.widget.EditText
android:text TexyView控件内具体显示的文本内容 android:gravity 控件内文字对齐方式 “center” 垂直和水平均居中,即效果等同于center_vertical:center_vertical...android:textSize=“24sp” 字体大小设置为24sp android:textColor="#00ff00" 设置字体颜色为:"#00ff00"值 接下来我们通过android:...:maxLines 指定了EditText的最大行数为两行,这样当输入的内容超过两行时,文本就会向上滚动,而EditText则不会再继续拉伸。 ...,传入数据为:View.VISIBLE 、View.INVISIBLE 和View.GONE style 控制进度条的格式,默认的进度条为动态的环形,可以改为拖动条 android:max 用于给拖动条设置最大大小...方法为对话框设置确定按钮的点击事件(对应于确定OK按键) 调用setNegativeButton() 方法设置取消按钮的点击事件(对应于Cancel按键) 最后调用show() 方法将对话框显示出来。
访问一个网页的请求实际上就是一个GET请求,应用的布局没啥好说的,线性布局,定义好控件,在activity代码里面先获取到控件,获取到EditText控件的网络路径,开启get请求 开启一个新的线程,new...Thread(){}.start() 获取Url对象,new出来,参数:path是String的url,内部类访问外部类的变量,应该顶一次final的 主线程中定义成员属性Handler对象,为了方便直接重写...()包装一下 调用Handler对象的sendMessage()方法发送数据 当设置请求参数的时候,不能多加冒号,否则容易出错 package com.tsh.hrmlviewer; import java.io.InputStream...; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.text.TextUtils...; import android.view.View; import android.widget.EditText; import android.widget.TextView; import android.widget.Toast
好了,废话说的有点多了,接下来进入正题,Kotlin中控件的的使用。 快捷查看 前言 一、简单控件使用 1.1 按钮Button 1. 匿名函数方式 2. 内部类方式 3....属性,修改isChecked的属性即为设置是否勾选,而获取isChecked的属性值即为判断是否勾选,这种合二为一的情况还有一些,如下表: 按钮控件的属性说明 Kotlin的状态属性 Java的状态获取与设置方式...图像视图ImageView在代码中调用的方法说明如下: setImageDrawable : 设置图形的Drawable对象。 setImageResource : 设置图形的资源ID。...当然这些效果你也可以直接在布局文件中写好 ? 这里设置也是一样的效果。...1.7 文本编辑框EditText 文件编辑框通俗的说就是输入框,在实际的开发中应用广泛,基本每一个APP都会有,常见的在一些登录、注册、个人信息编辑的地方使用,EditText是可以限制用户的输入方式的
一、Button简介 Button使用起来比较容易,可以通过指定android:background 属性为按钮增加背景颜色或背景图片,如果将背景图片设为不规则的背景图片,则可以开发出各种不规则形状的按钮... 上界面布局中的第一个按钮是一个普通按钮; 第二个按钮通过background属性配置了背景图片,因此该按钮将会显示为背景图片形状的按钮; 第三个按钮综合了文字显示和背景图片...,因此该按钮将会显示为背景图片上带文字的按钮。...为了监听登录按钮的点击事件,在Java代码中为其添加点击事件监听器,具体代码如下: public class MainActivity extends AppCompatActivity { private...name + "\n密码:" + password, Toast.LENGTH_SHORT).show(); } }); } } 上面的代码采用匿名内部类方式为登录按钮绑定点击事件监听器
上一节,先把访问网络的部分放到一个子线程里面去执行,new Thread(){}.start(),new Thread直接使用匿名内部类来实现,重写run()方法,内部类访问外部的变量,这个变量应该定义成...,参数:msg是Message对象,new出来Message对象,设置Message对象的what属性=一个自定义的int常量,设置Message对象的obj属性=要传递的内容。...; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.Bundle; import...android.os.Handler; import android.os.Message; import android.text.TextUtils; import android.view.View...; import android.widget.EditText; import android.widget.ImageView; import android.widget.Toast; public
,设置按钮为不可点击,参数:false 当播放完毕后应设置按钮可点击 调用MediaPlayer对象的setOnCompletionListener()方法,设置完成监听器,参数:OnCompletionListener...接口,使用匿名内部类实现接口,重写方法onCompletion()方法,在这个方法里面调用播放按钮的setEnable(true) 停止播放 判断MediaPlayer对象不为空,并且MediaPlayer...对象isPlaying()为真 调用MediaPlayer对象的stop()方法,停止播放 调用MediaPlayer对象的release()方法,是否 设置MediaPlayer对象为null 重新播放...暂停播放 判断MediaPlayer对象不为空,并且MediaPlayer对象isPlaying()为真 调用MediaPlayer对象的pause()方法,暂停播放 调用暂停按钮的setText()...方法,设置文字成:继续 在这个点击事件里判断文字是否为”继续”,如果是,就继续播放 调用MediaPlayer对象的start()方法 调用暂停安妮的setText()方法,设置文字成:暂停 MainActivity.java
pip转为Python3中的pip。...6 添加软链接 #将原来的链接备份 mv /usr/bin/python /usr/bin/python.bak #添加python3的软链接 ln -s /usr/local/python3/bin.../usr/bin/python2 8 将pip设置为python3中的pip 当我们安装完Python3之后,使用pip去下载库,我们会发现它下载的还是Python2中的,所以此时我们需要切换到Python3...中的pip。...#将原来的python,pip链接备份 mv /usr/bin/python /usr/bin/python.bak mv /usr/bin/pip /usr/bin/pip.bak #添加python3
2.6绑定到组件事件属性 就是在界面组件中为指定的组件通过属性标签定义监听器类 刚刚那个xml文件把button那个部分改一下 <Button android:paddingTop...,因此只能继续是用UI组件类,并通过重写该类的事件处理的方法来实现 为了处理回调机制的事件处理,android为所有UI组件提供了一些事件处理的回调方法。...,也会触发该组件所在的activity类的回调方法-只要事件传播到该activity类 下面以一个小例子来说明android系统中的事件传播流程,该程序重写了EditText类的onKeyDown...()方法,而且重写了该EditText所在的Activity类的onKeyDown()方法,由于程序中没有阻止事件的传播,所以程序中可以看到事件从RditText传播到Activity的全过程...总结 内部类:使用内部类作为事件监听器,可以在当前类中重复使用,另外,由于监听器是外部类的内部类,所以可以自由访问外部类的所有界面组件 外部类,外部类作为事件监听器的情况比较少见,原因两点:1.事件监听器通常属于特定的
领取专属 10元无门槛券
手把手带您无忧上云