Android:TextView的垂直滾動效果,和上下滾動效果
佈局裡面就是兩個自定義的TextView,上面的左右滑動的是AutoHorizontalScrollTextView;
下面上下滾動的是AutoVerticalScrollTextView;
上面左右滑動的非常好實現,直接把AutoHorizontalScrollTextView複製到專案中,複製全類名到佈局檔案中,和系統TextView一樣,只需設定文字其他什麼都不用設定;
下面垂直滾動的AutoVerticalScrollTextView相比AutoHorizontalScrollTextView稍微麻煩一點;但是也非常簡單;
如果在專案中使用的話直接把AutoVerticalScrollTextView複製到專案中;
有些屬性在佈局檔案中沒有辦法設定,需要在makeView()方法中設定:
//這裡返回的TextView,就是我們看到的View,可以設定自己想要的效果 public View makeView() { TextView textView = new TextView(mContext); textView.setGravity(Gravity.LEFT); textView.setTextSize(20); textView.setSingleLine(true); textView.setGravity(Gravity.CENTER_VERTICAL); textView.setEllipsize(TextUtils.TruncateAt.END); textView.setTextColor(Color.WHITE); return textView; }
接下來看下佈局檔案:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <!--左右滾動的textview--> <www.autotextview.com.autotextview.View.AutoHorizontalScrollTextView android:textSize="20sp" android:background="#000000" android:textColor="#ffffff" android:id="@+id/textview" android:layout_width="match_parent" android:layout_height="wrap_content" android:singleLine="true" /> <!--上下滾動的TextView--> <www.autotextview.com.autotextview.View.AutoVerticalScrollTextView android:id="@+id/textview_auto_roll" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="#000000" android:padding="5dp" /> </LinearLayout>
佈局檔案就非常簡單了,接下來說下兩個View具體怎麼使用:
左右滾動的TextView,直接設定一個TextView即可;
horizontalScrollTV = (AutoHorizontalScrollTextView) findViewById(R.id.textview);
horizontalScrollTV.setText(titleStr);
而垂直滾動的TextView需要的是一個數組,當執行next()方法的時候會執行動畫切換下一個資料;
在專案中我直接定義了一個計時器,每隔2秒傳送一個訊息,然後執行AutoVerTicalScrollTextView.next();
private String[] strings={"我的劍,就是你的劍!","俺也是從石頭裡蹦出來得!","我用雙手成就你的夢想!","人在塔在!","犯我德邦者,雖遠必誅!","我會讓你看看什麼叫殘忍!","我的大刀早已飢渴難耐了!"};
verticalScrollTV = (AutoVerticalScrollTextView) findViewById(R.id.textview_auto_roll);
verticalScrollTV.setText(strings[0]);
new Thread(){
@Override
public void run() {
while (isRunning){
SystemClock.sleep(3000);
handler.sendEmptyMessage(199);
}
}
}.start();
private Handler handler = new Handler() {
public void handleMessage(Message msg) {
if (msg.what == 199) {
verticalScrollTV.next();
number++;
verticalScrollTV.setText(strings[number%strings.length]);
}
}
};
點選事件是後期加上去的,在MainActivity的initView()方法中新增以下程式碼:
verticalScrollTV.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this,strings[number%strings.length],Toast.LENGTH_SHORT).show();
}
});
好了,需要自己寫的程式碼不多,如果哪些地方寫的不合適或者您有更好的辦法實現,希望評論,私聊及時指導;
相關推薦
Android:TextView的垂直滾動效果,和上下滾動效果
佈局裡面就是兩個自定義的TextView,上面的左右滑動的是AutoHorizontalScrollTextView; 下面上下滾動的是AutoVerticalScrollTextView; 上面左右滑動的非常好實現,直接把AutoHorizontalScrollTe
android TextView 垂直自動滾動字幕實現TextSwitcher
實現功能:用TextSwitcher實現文字自動垂直滾動,類似淘寶首頁廣告條。 實現效果: 注意:由於網上橫向滾動的例子比較多,所以這裡通過垂直的例子演示。 實現步驟:1、extends TextSwitcher implements ViewFactory
python3中給listbox新增垂直滾動條和水平滾動條
#scrolly是垂直滾動條,scrolly2是水平滾動條 scrolly=Scrollbar(win,width=25,orient=VERTICAL) scrolly.grid(row=0,column=1,padx=(0,0),pady=(250,0),s
webview 去掉滾動條和上下黑灰色背景
// 去掉webView的滾動條 for (UIView *subView in [webView subviews]) { if ([subView isKindOfClass:[UIScrollView class]])
android TextView裏邊實現圖文混配效果
分享 str images for pan override 設置 styles @override 用TextView實現這種效果,圖片文字混排,文字不同顏色字體。打電話和吊起瀏覽器等等 代碼例如以下: @Override public v
mui專案首頁頭部滾動漸變和頁面滾動元件衝突解決方案
1、頁面結構,header元件中新增mui-bar-transparent類。 2、輪播的滾動觸發了scroll事件,導致scroll-y一直為0,mui.js找到如下內容,禁止掉。 3、頁面中添加了scroll元件,導致transparent不生效,銷燬
Android TextView實現可暫停的跑馬燈效果
Android TextView 實現可以暫停的跑馬燈效果: content_main.xml <com.jackie.marqueetextview.MarqueeTextView
文字橫向滾動,或上下滾動
1、文字橫向滾動使用<marquee>標籤即可。<marquee><h1 style="margin: 40px; font: 30px Microsoft Yahei; text-align: center;">簡單的jQuery無縫向上
elementUI樹狀圖豎向滾動條和橫向滾動條問題
在使用vue時,就會有使用到elementUI,之後就是不斷的在入坑和天坑之間徘徊。 elementUI中有個隱藏的元件,就是滾動條-----<el-scrollbar></el-scrollbar> 可以參考elementUI的官網程式碼 這裡用
Android TextView 設定字間距和行間距
1.如果您是要設定TextView的行間距 請使用(不用看2了) android:lineSpacingMultiplier="1.8"2.如果您是要設定字間距需要自定義控制元件<pre name="code" class="java">import andr
Android-垂直上下滾動的TextView
相關類的繼承關係: public class View implements Drawable.Callback, KeyEvent.Callback, AccessibilityEventSource {...} public abs
Android textview和listview實現水平自動滾動的走馬燈效果
當我們遇到需要在一個textview裡顯示較長文字時候,往往有以下幾種考慮: 1.換行,Android裡本身也是這樣在考慮; 2.可以進行水平或者垂直滑動; 3.採用走馬燈效果。 其實這三種要實
Android實現textview文字滾動顯示(跑馬燈效果)
自定義Textview並對其進行改造,主要目的是讓textview獲取焦點,這樣文字才能滾動起來 public class MyTextView extends android.support.v7
android TextView實現滾動顯示效果(列表中多個同時滾動,親測可用)
在android中,如果設定了TextView控制元件為單行顯示,且顯示的文字太長的話,預設情況下會造成顯示不全的情況,這種情況下我們需要設定該控制元件屬性如下: <TextView android:id="@+id/tv1"
Android 上下滾動(跑馬燈)效果實現
產品的有個需求是 文字上下滾動,第一想到的是用屬性動畫實現,2個TextView 切換滾動,網上看了一堆資料大部分都是 TextSwitch,寫部落格不貼效果圖真的是很惆悵,不知道具體效果如何,第一次進入切換是否有問題,還有就是最後一個切換到第二個是否有問題,動畫是否流暢等,
TextView上下滾動實現通知效果
最近有個專案需要實現通知欄的上下滾動效果,仿淘寶頭條的那種。 我從網上看了一些程式碼,把完整的效果做了出來。如圖所示: 具體程式碼片段如下: 1.在res資料夾下新建anmin資料夾,在這個資料夾裡
Android TextView豎直滾動文字廣告效果
專案需要TextView單行豎直滾動文字廣告效果,很簡單的功能在網上找了很多沒有想要的效果。 開始找到的http://www.cnblogs.com/vaiyanzi/archive/2011/12/06/2277791.html,歌詞效果,對程式碼處理一下變成單行後,發現
TextView垂直方向無限滾動還有跑馬燈效果
用個自定義控制元件 然後顯示上去就可以啦 自定義控制元件package com.example.textviewscrollv; import android.content.Context; import android.graphics.Color; import
Android TextView實現滾動跑馬燈效果Marquee
可以利用原生功能實現效果: 1、如果TextView中的文字過長,(在失去焦點時)那麼超出顯示範圍的文字以...顯示 2、如果TextView獲得了焦點,那麼其中的文字以迴圈滾動的方式顯示 佈局中程式
學習筆記一、UITableView上下滾動導航欄漸變隱藏和顯示效果
大體思路:定義一個UINavigationBar的Category,在NavigationBar頂層增加一個檢視overlay。滾動時通過設定overlay檢視的背景色和透明度來達到隱藏和顯示導航欄效果。程式碼如下: #import <UIKit/UIKit.h&g