当前位置:首页 > android开发笔记
目 录
ANDROID开发:自定义记事本样式EDITTEXT ............... 1 ANDROID中EDITTEXT如何定位光标位置 .................... 15 ANDROID中软盘是使用 ................................ 15 应用程序最小化 ...................................... 19 全屏 ................................................ 19 SPLASH SCREEN开场屏在ANDROID中的实现 .............. 19 ANDROID 进程和线程 .................................. 20 ANDROID 的 TOAST 简单实用示例(用户提醒框) ........... 24 ANDROID自定义弹出层 ................................ 26 ANDROID VIEW透明度设置 ............................. 29 POPUPWINDOW DIALOG ALERTDIALOG PROGRESSDIALOG ....... 29
Android开发:自定义记事本样式EditText
public class Main extends Activity {
/** Called when the activity is first created. */ @Override
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);
LinearLayout layout = new LinearLayout(this); layout.setOrientation(LinearLayout.VERTICAL); MyNote mn = new MyNote(this); mn.setHeight(380); layout.addView(mn);
1
LinearLayout layout1=new LinearLayout(this);
layout1.setOrientation(LinearLayout.HORIZONTAL); Button button = new Button(this);
动态控制控件间距
RelativeLayout.LayoutParams layoutParams1 = (RelativeLayout.LayoutParams) searchinfoButton
.getLayoutParams();
layoutParams1.setMargins(distance, 0, distance, 0);
searchinfoButton.setLayoutParams(layoutParams1);
2
button.setText(\确定\ button.setWidth(60);
layout1.addView(button);
TextView textview=new TextView(this); Date date=new Date(); SimpleDateFormat sdf=new
SimpleDateFormat(\
String dateString=sdf.format(date); textview.setText(dateString); textview.setWidth(200);
textview.setPadding(60, 0, 0, 0); layout1.addView(textview);
Button button1=new Button(this); button1.setText(\取消\ button1.setWidth(60);
layout1.addView(button1);
layout.addView(layout1);
this.setContentView(layout); } }
主方法中主要实现了整个画布的布局的简单设置。以下是自定义EditText的具体实现方法。
MyNote.java
public class MyNote extends EditText{ public MyNote(Context context) { super(context); }
protected void onDraw(Canvas canvas){ int lineHeight=this.getLineHeight(); Paint mPaint=getPaint();
mPaint.setColor(Color.GRAY);//文本编辑线 int topPadding=this.getPaddingTop(); int leftPadding=this.getPaddingLeft(); float textSize=getTextSize();
3
setGravity(Gravity.LEFT|Gravity.TOP); int y =(int)(topPadding+textSize); for(int i=0;i canvas.translate(0, 0); super.onDraw(canvas); } } 这时候运行还看不到EditText,因为我们还没有加上,修改main.xml如下: Xml代码 4
共分享92篇相关文档