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"
/>