Android開發(fā)實(shí)現(xiàn)跟隨手指的小球效果示例
本文實(shí)例講述了Android開發(fā)實(shí)現(xiàn)跟隨手指的小球效果。分享給大家供大家參考,具體如下:
配置DrawView類用于繪制小球
public class DrawView extends View { public float currentX = 40; public float currentY = 50; //定義并創(chuàng)建畫筆 Paint p = new Paint(); public DrawView(Context context) { super(context); } public DrawView(Context context , AttributeSet set) { super(context,set); } @Override public void onDrawForeground(Canvas canvas) { super.onDrawForeground(canvas); //設(shè)置畫筆顏色 p.setColor(Color.RED); //繪制一個(gè)小球 canvas.drawCircle(currentX , currentY , 30 , p); } //為組建的觸碰實(shí)踐重寫處理方法 @Override public boolean onTouchEvent(MotionEvent event) { //修改currentX,currentY的兩個(gè)屬性 currentX = event.getX(); currentY = event.getY(); //通知當(dāng)前組建重繪自己 invalidate(); //放回true表明該處理方法已經(jīng)處理該事件 return true; } }
MainActivity
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //獲取Linearlayout布局容器 LinearLayout root = (LinearLayout) findViewById(R.id.root); //創(chuàng)建DrawView組件 final DrawView draw = new DrawView(this); //設(shè)定自定義組件的最小寬度、高度 draw.setMinimumWidth(300); draw.setMinimumHeight(500); root.addView(draw); } }
xml文件
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/root" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <com.example.a30797.myapplication.DrawView android:layout_width="match_parent" android:layout_height="match_parent" /> </LinearLayout>
**注:**由上面布局,已經(jīng)添加了自定義組件,因此Activity代碼可簡化為:
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } }
示例:
更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android控件用法總結(jié)》、《Android開發(fā)入門與進(jìn)階教程》、《Android視圖View技巧總結(jié)》、《Android編程之a(chǎn)ctivity操作技巧總結(jié)》、《Android數(shù)據(jù)庫操作技巧總結(jié)》及《Android資源操作技巧匯總》
希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。
- Android自定義圓形View實(shí)現(xiàn)小球跟隨手指移動(dòng)效果
- Android實(shí)現(xiàn)拖動(dòng)小球跟隨手指移動(dòng)效果
- Android實(shí)現(xiàn)跟隨手指拖動(dòng)并自動(dòng)貼邊的View樣式(實(shí)例demo)
- Android中View跟隨手指移動(dòng)效果
- Android自定義View圓形和拖動(dòng)圓、跟隨手指拖動(dòng)效果
- Android實(shí)現(xiàn)View拖拽跟隨手指移動(dòng)效果
- Android中View跟隨手指滑動(dòng)效果的實(shí)例代碼
- Android自定義View圓形和拖動(dòng)圓跟隨手指拖動(dòng)
- Android游戲開發(fā)學(xué)習(xí)①彈跳小球?qū)崿F(xiàn)方法
相關(guān)文章
Kotlin實(shí)現(xiàn)多函數(shù)接口的簡化調(diào)用
這篇文章主要為大家詳細(xì)介紹了Kotlin實(shí)現(xiàn)多函數(shù)接口的簡化調(diào)用,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06android開發(fā)教程之使用listview顯示qq聯(lián)系人列表
這篇文章主要介紹了android使用listview顯示qq聯(lián)系人列表的示例,需要的朋友可以參考下2014-02-02Android來電監(jiān)聽和去電監(jiān)聽實(shí)現(xiàn)代碼
本文是關(guān)于來點(diǎn)監(jiān)聽和去電監(jiān)聽展開問題,通過實(shí)例代碼講解,對(duì)android來電監(jiān)聽和去電監(jiān)聽的相關(guān)知識(shí)感興趣的朋友一起看看吧2017-06-06Android、Flutter為不同的CPU架構(gòu)包打包APK(v7a、v8a、x86區(qū)別)
默認(rèn)情況下,Android和Flutter打包出來的Apk都是包含了所有架構(gòu)的,這樣打出來的apk體積相對(duì)于單架構(gòu)的apk有點(diǎn)大,這時(shí),我們就需要分別打出不同的架構(gòu)包2023-08-08android計(jì)算器實(shí)現(xiàn)兩位數(shù)的加減乘除
這篇文章主要為大家詳細(xì)介紹了android計(jì)算器實(shí)現(xiàn)兩位數(shù)的加減乘除,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-03-03ANDROID中自定義對(duì)話框AlertDialog使用示例
這篇文章主要為大家詳細(xì)介紹了Android中自定義對(duì)話框AlertDialog使用示例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-12-12Android實(shí)現(xiàn)左右滑動(dòng)切換圖片
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)左右滑動(dòng)切換圖片,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05