android字符串的长度
❶ android 怎么获取TextView字符串的长度
可用下面办法获取长度:
[java] view plain
Paint paint = new Paint();
paint.setTextSize(currentTextView.getTextSize());
float size = paint.measureText(currentTextView.getText().toString());
❷ android logcat 可以输出的长度
push到机器上。但是你说的哪些编辑步骤都对。字符串最大长度一般是2^16-1=65535,有兴趣可以看一下android的源码,这里有一个源码分析的文章:
http://blog.csdn.net/luoshengyang/article/details/6606957
输出不全的可能性基本没有,如果有也是和输出的显示缓存有关,写到文件里肯定没问题。
❸ android怎样获取字符串的长度
笨一点的办法就是先判断size是不是小于15,小于的话就用个for循环,少几个就补几个
❹ Android TextView 设置为单行。然后传入一个比较长的字符串,只显示局部。怎么获得显示的长度
andorid里面是不能获得文字的长度的。你的TextView设置成单行,那么字符串很长超过屏幕的宽的话是显示不下的,这时候,可以设置省略符号,android:ellipsize,这个可以设置在头省略或者尾部省略,也可以设置成跑马灯。
❺ android中怎么字符串的长度
这里的字符或者字符串的宽度,计算的是其像素值。有以下两种方法:方法1:
Paint paint= new Paint();
Rect rect = new Rect();
//返回包围整个字符串的最小的一个Rect区域
paint.getTextBounds(str, 0, 1, rect);
int strwidth = rect.width();
int strheight = rect.height();方法2:
//直接返回参数字符串所占用的宽度
float strwidth = paint.measureText(str);
对于字符而言,可以将字符转换成字符串,然后计算。例如:
char c = 'c';
然后利用上面两种方法即可。
❻ android 中如何限制 EditText 最大输入字符数
三种方式控制EditText
最大输入字符数
1.在xml中
android:maxLength="10"
表示最大字符为10
2.在代码中
InputFilter[]
filters
=
{new
LengthFilter(10)};
editText.setFilters(filters);
//表示最大输入10个字符
3.利用
TextWatcher
进行监听,以下为示例代码:
public
void
afterTextChanged(Editable
arg0)
{
}
public
void
beforeTextChanged(CharSequence
arg0,
int
arg1,
int
arg2,
int
arg3)
{
}
public
void
onTextChanged(CharSequence
arg0,
int
arg1,
int
arg2,
int
arg3)
{
Editable
editable
=
editText.getText();
int
len
=
editable.length();
if(len
>
maxLen)
{
int
selEndIndex
=
Selection.getSelectionEnd(editable);
String
str
=
editable.toString();
//截取新字符串
String
newStr
=
str.substring(0,maxLen);
editText.setText(newStr);
editable
=
editText.getText();
//新字符串的长度
int
newLen
=
editable.length();
//旧光标位置超过字符串长度
if(selEndIndex
>
newLen)
{
selEndIndex
=
editable.length();
}
//设置新光标所在的位置
Selection.setSelection(editable,
selEndIndex);
}
}
❼ android 怎么获取TextView字符串的长度
如果用testSize设置汉字的大小,其值用像素表示。用 屏幕宽度的像素/汉字宽度像素就得到了所能显示文字的长度,如果出现字母和特殊符号的时候,这样计算字符串长度就不准确了。
可用下面办法获取长度:
Paint paint =
new
Paint();
paint.setTextSize(currentTextView.getTextSize());
float size =paint.measureText(currentTextView.getText().toString());
❽ android 中如何限制 EditText 最大输入字符数
方法1::在布局文件中设置文本编辑框属性作字符数限制,android:maxLength="10" 即限制最大输入字符个数为10
方法2:在代码中使用InputFilter 进行过滤
{
privateEditTexttext;
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
text=(EditText)findViewById(R.id.text);
text.setFilters(newInputFilter[]{newInputFilter.LengthFilter(20)});
}
}
方法3:利用 TextWatcher 进行监听
继承TextWatcher接口,对输入进行监听
{
privateintmaxLen=0;
privateEditTexteditText=null;
publicMaxLengthWatcher(intmaxLen,EditTexteditText){
this.maxLen=maxLen;
this.editText=editText;
}
publicvoidonTextChanged(CharSequences,intstart,intbefore,intcount){
//TODOAuto-generatedmethodstub
Editableeditable=editText.getText();
intlen=editable.length();
if(len>maxLen)
{
intselEndIndex=Selection.getSelectionEnd(editable);
Stringstr=editable.toString();
//截取新字符串
StringnewStr=str.substring(0,maxLen);
editText.setText(newStr);
editable=editText.getText();
//新字符串的长度
intnewLen=editable.length();
//旧光标位置超过字符串长度
if(selEndIndex>newLen)
{
selEndIndex=editable.length();
}
//设置新光标所在的位置
Selection.setSelection(editable,selEndIndex);
}
}
@Override
publicvoidbeforeTextChanged(CharSequences,intstart,intcount,
intafter){
}
@Override
publicvoidafterTextChanged(Editables){
}
}
在activity中为EditText添加监听
{
privateEditTexttext;
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
text=(EditText)findViewById(R.id.entry);
//限制为10
text.addTextChangedListener(newMaxLengthWatcher(10,editText));
}
}
❾ Android 怎么控制EditText输入阿拉伯数字的字符长度 求高手解释!
<EditText
......
android:maxLength="10"
android:inputType="number"
/>