mymoon 发表于 2020-12-16 10:59

android初学,mainactivity文件(包括java和xml)和其他文件是什么关系?

跟着网站学android代码示例: 定义一个简单的view,绘制一个蓝色的小圆,可以跟随手指进行移动实现代码: MyView.javamain.xml:我现在学的都是通过activity_main.xml,MainActivity.java运行的,上述这个程序在哪里运行啊?

或跃在渊09 发表于 2020-12-16 11:08

本帖最后由 或跃在渊09 于 2020-12-16 11:16 编辑

xml编写视图,界面等;
Java编写程序逻辑;
在Android Studio中开发,运行调试。

mymoon 发表于 2020-12-16 11:26

或跃在渊09 发表于 2020-12-16 11:08
xml编写视图,界面等;
Java编写程序逻辑;
在Android Studio中开发,运行调试。

谢谢你的回复啊,但我问的不是这个。是为了实现定义一个简单的view,绘制一个蓝色的小圆,可以跟随手指进行移动这个程序,网站给出了编写小圆的xml文件和和随手指移动的实现的myview.java,但没出现activity_main.xml和mainactivity,java文件,我不知道怎么让程序运行起来。

一贫如洗王思聪 发表于 2020-12-16 11:27

用代码实现自定义view类,在main.xml中使用,或者手动实例化view,添加进布局中

或跃在渊09 发表于 2020-12-16 11:50

mymoon 发表于 2020-12-16 11:26
谢谢你的回复啊,但我问的不是这个。是为了实现定义一个简单的view,绘制一个蓝色的小圆,可以跟随手指进 ...

https://www.jb51.net/article/137258.htm

diaozatian815 发表于 2020-12-16 14:21

爱吃鸡魔人 发表于 2020-12-16 14:24

启动页面并不一定是MainActivity,你要看这个文件中的代码逻辑,如果MyVIew.java中代码逻辑完整,你就直接从MyView.java启动程序就是了

mymoon 发表于 2020-12-17 19:48

回来补坑。
MyView.java
public class MyView extends View {
    public float X = 50;
    public float Y = 50;
    //创建画笔
    Paint paint = new Paint();
    public MyView(Context context, AttributeSet set)
    {
      super(context,set);
    }
    @Override
    public void onDraw(Canvas canvas) {
      super.onDraw(canvas);
      paint.setColor(Color.BLUE);
      canvas.drawCircle(X,Y,30,paint);
    }
    @Override
    public boolean onTouchEvent(MotionEvent event) {
      this.X = event.getX();
      this.Y = event.getY();
      //通知组件进行重绘
      this.invalidate();
      return true;
    }
}
在activity_main.xml文件里,加入<com.xxx.xxx.MyView
      android:layout_width="match_parent"
      android:layout_height="match_parent" />就可以了
页: [1]
查看完整版本: android初学,mainactivity文件(包括java和xml)和其他文件是什么关系?