TextView最大长度限制,超出部分省略号显示
xml中属性设置:
<TextView android:id="@+id/name" android:layout_width="wrap_content" android:layout_height="wrap_content" android:ellipsize="end" android:maxEms="7" android:singleLine="true" android:textColor="@color/text_deep_black_color" android:textSize="15sp" />
其中关键参数:
android:ellipsize="end"
android:maxEms="7"
android:singleLine="true"
PS:设置maxLength达不到这个效果,maxLength不会自动显示省略号。
LinearLayout中组件右对齐
在LinearLayout中,如果将其定位方向设为横向排列:android:orientation="horizontal",那么这个布局中的控件将自左向右排列。
但有时会有这样的情况:行的左边有两个控制的同时,行的右边也有一个控制。
这怎么处理呢?
我们可以将右边的控件放在另一个LinearLayout中,同时将其对齐方式设为右对齐:android:gravity="right",还有一点,这个LinearLayout的宽度设为充满父控件: android:layout_width="fill_parent"。这样就行了。
完整的XML代码如下:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@drawable/bg" android:orientation="horizontal" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="左边1" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="左边2" /> <!-- 将TextView包在另一个LinearLayout中 注意android:layout_width和android:gravity这两个属性 --> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="right" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="10dp" android:text="右边" /> </LinearLayout> </LinearLayout>
android添加横线或竖线
横线:
<View android:layout_height="1px" android:layout_width="match_parent" android:background="#66CCFF" />
竖线:
<View android:layout_width="1dip" android:layout_height="match_parent" android:background="#66CCFF" android:layout_gravity="center_horizontal" />
Activity与Fragment之间的跳转:
(1)Fragment跳转到Activity:
startActivity(new Intent(getActivity(), Activity.class)); // 首先需要通过getActivity()方法获取到当前Activity
(2)Activity跳转到Fragment:
// Activity不能直接跳转到Fragment,需要先跳转到Fragment所附着的Activity中,然后再更改Activity当前显示哪个Fragment。
intert.putExtra("fragid",1); //首先在Activity跳转之前,在Intent中传入一个flag,用来标记跳转到哪一个Fragment。
// 然后根据flag来判断显示哪个Fragment
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction(); // import android.support.v4.app.FragmentTransaction;
transaction.replace(R.id.frame_content, new CenterFragment());
transaction.commit();
RelativeLayout 显示、隐藏、移除
RelativeLayout layout = (RelativeLayout) findViewById(R.id.relative);
1)通过下面代码实现显示相对布局的内容
layout.setVisibility(View.VISIBLE);
2)通过下面代码移除显示相对布局的内容
layout.setVisibility(View.GONE);
3)通过下面代码隐藏显示相对布局的内容
layout.setVisibility(View.INVISIBLE);
setVisible(VIew.GONE); //隐藏 并且不占用界面空间
setVisible(VIew.VISIBLE); //控件显示
setVisible(VIew.INVISIBLE); //控件隐藏 占用界面空间
android代码设置RelativeLayout的高度
private RelativeLayout relative; relative = (RelativeLayout) findViewById(R.id.rlay_1); ViewGroup.LayoutParams params=relative.getLayoutParams(); params.height =180; relative.setLayoutParams(params);
ImageView.ScaleType:
CENTER /center 按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截取图片的居中部分显示
CENTER_CROP / centerCrop 按比例扩大图片的size居中显示,使得图片长(宽)等于或大于View的长(宽)
CENTER_INSIDE / centerInside 将图片的内容完整居中显示,通过按比例缩小或原来的size使得图片长/宽等于或小于View的长/宽
FIT_CENTER / fitCenter 把图片按比例扩大/缩小到View的宽度,居中显示
FIT_END / fitEnd 把图片按比例扩大/缩小到View的宽度,显示在View的下部分位置
FIT_START / fitStart 把图片按比例扩大/缩小到View的宽度,显示在View的上部分位置
FIT_XY / fitXY 把图片不按比例扩大/缩小到View的大小显示
MATRIX / matrix 用矩阵来绘制,动态缩小放大图片来显示。
layout_centerInParent与layout_centerHorizontal与layout_gravity的区别
是相对于RelativeLayout
android:layout_centerInParent="true" --将控件置于父控件的中心位置
android:layout_centerHorizontal="true" --该控价设置在相对于父控件水平居中的位置
android:layout_centerVertical="true" --将控件置于垂直方向的中心位置
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true
android:layout_centerInParent="true"
layout_gravity
针对LinearLayout的一种控件对齐方式,可以把值设置成下列值:
center_vertical、center_horizontal、center等等
gravity
控制控件内文字的对齐方式
RadioGroup的RadioButton中文字和图片的距离
android:button=@null;//将默认的button图片清空
android:drawableLeft=@drawable/radiobutton;//使用该属性定义button图片
android:background=@null;//将radioButton的背景设为空
android:drawablePadding=6dp;//将文字和左侧的button图片相距6dp
给LinearLayout设置点击事件
方法一:
1,在代码中加入如下代码,不然会被包含在其中的控件把焦点抢占,此时子控件无需设置clickable和focuseable
<RelativeLayout android:id="@+id/relativeLayout" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_weight="1" android:onClick="onClick" android:clickable="true" > ...... </RelativeLayout>
2,一方面可以在代码中find出来,添加监听器onClickListenner,另一方面也可以添加一个onClick()方法,在activity中实现指定的方法。以后者为例。在布局中必须加上代码android:onClick="onClick",其中等号右边的值,可以自定义为自己的方法,只是得在activity中提供此方法,类似onClick()。
3,activity的添加代码,如下
public void onClick(View v) { switch (v.getId()){ case R.id.relativeLayout: System.out.println("整个布局被点击"); break; } }
方法二:
<RelativeLayout android:id="@+id/relativeLayout" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_weight="1" android:focusableInTouchMode="true" > ...... </RelativeLayout>
1,在activity中find在添加OntouchLisenner方法
2,实现OntouchLisenner的Ontouch()方法
可能出现的问题
1,当把<RelativeLayout></RelativeLayout>嵌套在其他布局时,android:focusableInTouchMode="true"和android:clickable="true"不能同时设置。
2,当有多个<RelativeLayout></RelativeLayout>实现整体点击时,应当让activity实现OnClickListenner或OntouchListenner,不要单独的在给布局设置时new,即不要给每个布局setOnTouchListener(new ...);每个监听器都是新的很容易出现执行多次监听方法
判断imageview是否有图片或者是默认图片
Drawable.ConstantState frontState = iv_front.getDrawable().getCurrent().getConstantState(); if (frontState==null){ AppContext.showToast("请上传图片"); return; }
。。。
相关推荐
日历控件使用问题
说明一下,如果把X和Y控件的源代码在B机器编译后再使用就没有问题 我在想是不是X控件在编译时指定了Y控件的ID号,如果把X,Y复制到B机器注册后对应的Y控件的ID号与X控件指定的Y控件的ID号不匹配,如果是这样的话,...
它可以取代先前版本中DataGrid控件,它易于使用并高度可定制,支持很多我们的用户需要的特性。 关于本文档: 本文档不准备面面俱到地介绍DataGridView,而是着眼于深入地介绍一些技术点的高级特性。 本文档按逻辑...
MSComm控件在串口编程时非常方便,程序员不必去花时间去了解较为复杂的API函数,而且在VC、VB、Delphi等语言中均可使用。 Microsoft Communications Control(以下简称MSComm)是Microsoft公司提供的简化Windows下...
解决WIN7系统中VS2010不能使用MSCOMM控件的问题
跨浏览器控件SDK使用说明 跨浏览器控件SDK V2.3.0.exe 控件支持现有高拍仪设备和定制设备 现在支持的功能: 1. 提供设备选择 2. 支持设备预览 3. 设置出图格式 4. 设置分辨率 5. 支持拍照功能 6. 获取拍照图像类型...
C# DataGridView控件使用完全攻略 DataGridView是用于Windows Froms 2.0的新网格控件。它可以取代先前版本中DataGrid控 件,它易于使用并高度可定制,支持很多我们的用户需要的特性。 关于本文档: 本文档不准备...
Tab控件使用时的问题图例
Indy使用一个特殊的组件TIdAntiFreeze来透明地解决客户程序用户界面“冻结”的问题。TIdAntiFreeze在Indy内部定时中断对栈的调用,并在中断期间调用Application.ProcessMessages方法处理消息,而外部的Indy调用...
解决EXCEL控件问题,在win764位系统上不能使用excel控件。
easyUI,时间控件,解决时间格式化问题
日历控件的使用及详解,兼回答网友的一个问题,凑字
这使您得以使用可应用于其他 Windows 窗体控件的同一设计时支持和编程方法论。若要承载 ActiveX 控件,必须生成从 AxHost 派生的包装控件。此包装控件包含基础 ActiveX 控件的一个实例。它知道如何与 ActiveX 控件...
介绍:这是WalkingPoison根据梅花雨的日历控件修改发展出来的一个日历 ...2.针对用户反映的汉字和星期显示的问题,我把解决办法也写成文档,里面有详细解决办法,还有截图。 3.如果还是不能解决的话,可以联系我。
qt自定义控件编译和使用流程,以及在使用过程中遇到的一问题及需要注意的地方
本文主要介绍我在使用DevExpress控件过程中,遇到或者发现的一些问题解决方案,或者也可以所示一些小的经验总结。总体来讲,使用DevExpress控件,可以获得更高效的界面设计以及更美观的效果。本文主要通过给出相应的...
学习创建和使用自定义控件写的试验代码,centos qt5.8可以使用。具体实现过程见我的文章:http://blog.csdn.net/csdn83419527/article/details/78870487 调试过程中出现的问题都有描述。另外控件代码用的lx100991的...
我的程序哪里错了为什么不能调节,,不知道哪里出错了,请大家看看,要写20字真是烦人
可以编译通过,但程序运行崩溃,可是找不出问题在哪里,上传源码,大家有兴趣可以看看
MSComm控件在串口编程时非常方便,程序员不必去花时间去了解较为复杂的API函数,而且在VC、VB、Delphi等语言中均可使用。 Microsoft Communications Control(以下简称MSComm)是Microsoft公司提供的简化Windows下...