android垂直textview
A. android如何實現textview水平垂直居中
android:layout_gravity="center"//這一句實現textview控制項在容器中悄汪槐的水平和啟友垂直居中
android:gravity="center"/陵鎮/這一句實現textview的內容水平和垂直居中
但是如果textview在linearlayout中,要看linearlayout設置的對其方式是什麼
B. Android中TextView如何實現水平和垂直滾動
殤 殤雲的專欄 雲的專欄 軟體開發鋒顫 軟體開發 一 一、只想讓TextView顯示一行,但是文字超過 、只想讓TextView顯示一行,但是文字超過 在開頭顯示省略號 android:singleLine="true" android:ellipsize="start" 在結尾顯示省略號 android:singleLine="true" android:ellipsize="end" 在中間顯示省略號 android:singleLine="true" android:ellipsize="middle" 橫向自動滾動(跑馬燈效果)段裂 android:singleLine="true" android:ellipsize="marquee" android:marqueeRepeatLimit="marquee_forever" android:focusable="true" android:focusableInTouchMode="true" 以上4個效果都要加上�0�2android:singleLine="true",因為TextView默認是會自動換行的 android:marqueeRepeatLimit="marquee_forever"是設置銀燃敗永遠重復,當然你也可以設置具體的數字 android:focusable="true"和android:focusableInTouchMode="true"一定要加上,不然滾動效果出不來在java代碼中加入下面一句話就可以實現垂直滾動
C. 安卓開發textview垂直滾動慢
安卓開發textview垂直滾動慢如下,Android TextView可以實現文字平緩垂直自動滾粗銀動 ,上面的左右滑動的是AutoHorizontalScrollTextView;下面上下滾動的是AutoVerticalScrollTextView,盯扒上面左右滑動的非常好實凱凳昌現,直接把AutoHorizontalScrollTextView復制到項目中,復制全類名到布局文件中,和系統TextView一樣,只需設置文本其他什麼都不用設置。
D. android垂直TextView怎麼能讓它自動滾動
這是跑馬燈的效果。實現該功能步驟:
1、自定義Views,繼承自TextView。
2、重寫onDrow方法,計算每次的滾動的距離。
3、計算view的Y軸的重點,讓當前顯示的處於高亮顯示狀態。
4、定時的刷新View使其界面不斷的刷先,出現滾動的效果。
5、實現數據結構,將數據傳給view。
幾個步驟代碼可以參考下面
下面看看主要代碼:
1、創建一個類繼承TextView
/**
*@authorxushilin
*
*垂直滾動的TextViewWidget
*/
2、實現構造函數:
publicVerticalScrollTextView(Contextcontext){
super(context);
init();
}
publicVerticalScrollTextView(Contextcontext,AttributeSetattr){
super(context,attr);
init();
}
publicVerticalScrollTextView(Contextcontext,AttributeSetattr,inti){
super(context,attr,i);
init();
}
privatevoidinit(){
setFocusable(true);
//這里主要處理如果沒有傳入內容顯示的默認值
if(list==null){
list=newArrayList<Notice>();
Noticesen=newNotice(0,"暫時沒有通知公告");
list.add(0,sen);
}
//普通文字的字型大小,以及畫筆顏色的設置
mPaint=newPaint();
mPaint.setAntiAlias(true);
mPaint.setTextSize(16);
mPaint.setColor(Color.BLACK);
mPaint.setTypeface(Typeface.SERIF);
//高亮文字的字型大小,以及畫筆顏色的設置
mPathPaint=newPaint();
mPathPaint.setAntiAlias(true);
mPathPaint.setColor(Color.RED);
mPathPaint.setTextSize(16);
mPathPaint.setTypeface(Typeface.SANS_SERIF);
}
3、從寫onDraw方法,並計算文字的行距,並且將將普通文字和高亮文字,在這個方法中繪制出來
protectedvoidonDraw(Canvascanvas){
super.onDraw(canvas);
canvas.drawColor(0xEFeffff);
Paintp=mPaint;
Paintp2=mPathPaint;
p.setTextAlign(Paint.Align.CENTER);
if(index==-1)
return;
p2.setTextAlign(Paint.Align.CENTER);
canvas.drawText(list.get(index).getName(),mX,middleY,p2);
floattempY=middleY;
for(inti=index-1;i>=0;i--){
tempY=tempY-DY;
if(tempY<0){
break;
}
canvas.drawText(list.get(i).getName(),mX,tempY,p);
}
tempY=middleY;
for(inti=index+1;i<list.size();i++){
tempY=tempY+DY;
if(tempY>mY){
break;
}
canvas.drawText(list.get(i).getName(),mX,tempY,p);
}
}
4、計算Y軸中值以及更新索引
protectedvoidonSizeChanged(intw,inth,intow,intoh){
super.onSizeChanged(w,h,ow,oh);
mX=w*0.5f;
mY=h;
middleY=h*0.5f;
}
privatelongupdateIndex(intindex){
if(index==-1)
return-1;
this.index=index;
returnindex;
}
5、定時更新view,並將介面暴露給客戶程序調用。
publicvoipdateUI(){
newThread(newupdateThread()).start();
}
{
longtime=1000;
inti=0;
publicvoidrun(){
while(true){
longsleeptime=updateIndex(i);
time+=sleeptime;
mHandler.post(mUpdateResults);
if(sleeptime==-1)
return;
try{
Thread.sleep(time);
i++;
if(i==getList().size())
i=0;
}catch(InterruptedExceptione){
e.printStackTrace();
}
}
}
}
HandlermHandler=newHandler();
RunnablemUpdateResults=newRunnable(){
publicvoidrun(){
invalidate();
}
};
6、xml布局文件中調用:
<?xmlversion="1.0"encoding="utf-8"?>
<!--.-->
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<com.demo.xsl.text.SampleView
android:id="@+id/sampleView1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/selector"
/>
</LinearLayout>
7、java代碼中調用,傳遞數據:
packagecom.demo.xsl.text;
importjava.util.ArrayList;
importjava.util.List;
importandroid.app.Activity;
importandroid.os.Bundle;
importandroid.os.Handler;
{
SampleViewmSampleView;
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mSampleView=(SampleView)findViewById(R.id.sampleView1);
Listlst=newArrayList<Sentence>();
for(inti=0;i<30;i++){
if(i%2==0){
Sentencesen=newSentence(i,i+"、金球獎三甲揭曉C羅梅西哈維入圍");
lst.add(i,sen);
}else{
Sentencesen=newSentence(i,i+"、公牛欲用三大主力換魔獸?????");
lst.add(i,sen);
}
}
//給View傳遞數據
mSampleView.setList(lst);
//更新View
mSampleView.updateUI();
}
}
E. android如何實現textview水平垂直居中
1、方法:設置textview的屬性android:layout_gravity="center"
2、補充:
(1)android:layout_gravity:View組件相對於Container的對齊方式。center表示將對象橫縱居中,不改變其大小。
(2)屬性可選的值還有:top、bottom、left、right、center_vertical、fill_vertical、center_horizontal、fill_horizontal、fill、clip_vertical。
3、android
(1)Android是一種基於Linux的自由及開放源代碼的操謹慧作系統,主要使用於祥粗答移動設備,如智能手機和平板電腦,由Google公司和開放手機聯盟領導及開發。尚未有統一中文名稱,中國大陸地區較多人使用「安卓」或「安致」。Android操凳猜作系統最初由Andy Rubin開發,主要支持手機。2005年8月由Google收購注資。
(2)2007年11月,Google與84家硬體製造商、軟體開發商及電信營運商組建開放手機聯盟共同研發改良Android系統。隨後Google以Apache開源許可證的授權方式,發布了Android的源代碼。第一部Android智能手機發布於2008年10月。Android逐漸擴展到平板電腦及其他領域上,如電視、數碼相機、游戲機等。2011年第一季度,Android在全球的市場份額首次超過塞班系統,躍居全球第一。
4、textview:textView是用來顯示字元串的組件,在手機上就是顯示一塊文本的區域。