『壹』 android屬性動畫之旋轉動畫
CSDN同步發布
旋轉動畫有三種
角度增加是逆時針方向旋轉。注意,如果旋轉角度是90度的話,最終View會不可見。
當要旋轉的View尺寸很小的時候,效果很好,但是當View很大的時候,就出問題了。如下所示:
當時很奇怪為啥會這樣呢?最後是在這篇文章 實現翻轉卡片的動畫效果 看到了一個叫cameraDistance的東西,然後感覺可能這個有用,試了試果然可以。
View的 getCameraDistance 方法。
View的 setCameraDistance 方法,看注釋。
注意:注釋中的這段這個相機距離用「深度像素」來表示。默認的距離依賴屏幕的密度。例如,在一個中等密度的屏幕上,默認的距離是1280。在高密度的屏幕上,默認距離是1920。我認為這個單位是dp。1280dp,1920dp。我的測試機density是2.75,通過getCameraDistance方法,獲取到的值是3520.0,3520.0除以2.75就是1280。
注意:關於設置cameraDistance,建議始終使用大於此視圖高度(繞X軸旋轉)或寬度(Y軸旋轉)的相機距離。而且這個距離得比較大才行,我測試下來得10000以上才可以。如下所示:
同樣需要設置 cameraDistance
平時這個用的比較多應該,也比較簡單。也不涉及 cameraDistance 的東西。
參考鏈接
『貳』 android製作一個可以旋轉textview怎麼實現
android製作一個可以旋轉textview需要用到補間動畫,然後用textview調用該補間動畫。在andorid studio中實現步驟如下。
1、首先在一個layout布局中創建一個textView控制項,並定義id。代碼如下:
<?xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:id="@+id/tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
2、然後創建anim文件,在然後文件中創建一個xml文件,文件中為tv_rotate。文件內容如下。
運行之後textView就可以旋轉了。
『叄』 華為手機視頻怎麼翻轉
系統為例,從手機屏幕右上角向下滑,在界面中把界面方向鎖打開,這樣就可以了。手機使用技巧:讓視頻鏡面翻轉的三種方法如下:
第一種方法是使用Android翻轉動畫進行實現。
該方法需要重寫動畫,實現翻轉,並將該動畫添加到布局中,之後只要將動畫的時長設置到0就能忽略掉動畫過程,從而直接獲取到動畫的最終效果。需要重寫Animate類,用 android.graphics.Camera和 android.graphics.Matrix可以比較容易地實現翻轉效果
第二種方法是對控制項進行重寫是另外一個實現的思路。假設承載界面的Layout是RelativeLayout,則可以對整個RelativeLayout進行重寫
第三種方法是對於自定義的SurfaceView來說,可以對在lockCanvas中獲取的Canvas對象進行翻轉處理。
知識延展:
Android是一種基於Linux的自由及開放源代碼的操作系統,主要使用於移動設備,如智能手機和平板電腦,由Google公司和開放手機聯盟領導及開發。尚未有統一中文名稱,中國大陸地區較多人使用「安卓」或「安致」。
Android操作系統最初由Andy Rubin開發,主要支持手機。2005年8月由Google收購注資。2007年11月,Google與84家硬體製造商、軟體開發商及電信營運商組建開放手機聯盟共同研發改良Android系統。隨後Google以Apache開源許可證的授權方式,發布了Android的源代碼。第一部Android智能手機發布於2008年10月。Android逐漸擴展到平板電腦及其他領域上,如電視、數碼相機、游戲機等。優點如下:
1.
信號超好,輻射低通話聲音清楚。
2.
華為刷系統相當方便,一個數據線,一個PC端的桌面管理器就可以完成刷機。
3.
華為系統資源豐富,編寫華為程序,甚至所有的java軟體都可以輕松轉化為華為軟體。
4.
反應速度快,系統穩定。
『肆』 android開發中如何旋轉布局
樓主你好,這個可以通過動畫來達到這個效果的,代碼如下:
只要把您的layout對象傳進去就行了
public void showAnimation(View mView)
{
final float centerX = mView.getWidth() / 2.0f;
final float centerY = mView.getHeight() / 2.0f;
//這個是設置需要旋轉的角度,我設置的是180度
RotateAnimation rotateAnimation = new RotateAnimation(0, 180, centerX,
centerY);
//這個是設置通話時間的
rotateAnimation.setDuration(1000*3);
rotateAnimation.setFillAfter(true);
mView.startAnimation(rotateAnimation);
}
『伍』 android 怎麼在輪播時實現多種動畫效果,如第一張到第二張漸變,第二張到第三張旋轉
Android系統自帶的一個多頁面管理控制項,它可以實現子界面的自動切換:
首先 需要為ViewFlipper加入View
(1) 靜態導入:在layout布局文件中直接導入
(2) 動態導入:addView()方法
ViewPlipper常用方法:
setInAnimation:設置View進入屏幕時候使用的動畫
setOutAnimation:設置View退出屏幕時候使用的動畫
showNext:調用該函數來顯示ViewFlipper裡面的下一個View
showPrevious:調用該函數來顯示ViewFlipper裡面的上一個View
setFlipInterval:設置View之間切換的時間間隔
startFlipping使用上面設置的時間間隔來開始切換所有的View,切換會循環進行
stopFlipping:停止View切換
講了這么多,那麼我們今天要實現的是什麼呢?
(1) 利用ViewFlipper實現圖片的輪播
(2) 支持手勢滑動的ViewFlipper
我們需要先准備幾張圖片:把圖片放進drawable中
創建兩個動畫:在res下面新建一個folder裡面新建兩個xml:
『陸』 android怎麼實現圖片旋轉
可以使用RotateAnimation動畫實現,設定無限循環即可
代碼如下
{
ImageViewiv;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_two);
iv=(ImageView)findViewById(R.id.image);
RotateAnimationanimation=newRotateAnimation(0,360);
animation.setDuration(100000);//設定轉一圈的時間
animation.setRepeatCount(Animation.INFINITE);//設定無限循環
animation.setRepeatMode(Animation.RESTART);
iv.startAnimation(animation);
}
}
也可以自定義view繼承於imageview,啟動一個線程,在while循環里設置view的旋轉角度
{
privatefloatmCurDegree=0;//當前旋轉角度
publicRotateView(Contextcontext,AttributeSetattrs){
super(context,attrs);
newThread(this).start();
}
@Override
protectedvoidonLayout(booleanchanged,intleft,inttop,intright,
intbottom){
super.onLayout(changed,left,top,right,bottom);
//設定旋轉中心
setPivotX(getMeasuredWidth()/2);
setPivotY(getMeasuredHeight()/2);
}
@Override
publicvoidrun(){
while(true){
setRotation(mCurDegree);
mCurDegree+=5;
postInvalidate();
SystemClock.sleep(16);
}
}
}
在布局文件里使用RotateView代替imageview即可