首页 > 代码库 > 通过自定义view替代layout.xml表示activity的界面
通过自定义view替代layout.xml表示activity的界面
创建了一个新项目之后,
在src内新建一个类public class 类名 extends View
1 package com.example.activity_view; 2 3 import android.content.Context; 4 import android.graphics.Canvas; 5 import android.graphics.Color; 6 import android.graphics.Paint; 7 import android.view.View; 8 9 public class contentview extends View{10 11 public contentview(Context context) {12 super(context);13 // TODO Auto-generated constructor stub14 }15 @Override16 protected void onDraw(Canvas canvas)17 {18 Paint paint=new Paint();19 paint.setTextSize(18);20 paint.setAntiAlias(true); //设置抗锯齿21 paint.setColor(Color.RED); //设置字体颜色22 canvas.drawText("这是通过继承和扩展view类来显示的。", 0, 50, paint); //绘制字体23 }24 25 }
onDraw(Canvas canvas)是用于绘制界面的。通常用Paint来绘制。
之后,在MainActivity.class中把setcontentview(R.layout.xxx)替换为(contentview);如下
package com.example.activity_view;import android.os.Bundle;import android.app.Activity;import android.content.Intent;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;public class MainActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); contentview cv=new contentview(this); setContentView(cv); }}
这样,就成功了
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。