您现在的位置是:心海E站 > 文案短句 > >正文

androidmenu(androidMENU自定义开发)

发布时间:2023-11-14 07:39:39 admin 阅读:59

导读一、Android 怎么实现自定义menuItem 1、可以在xml中自定义item项目为menu。 二、怎样在Android Menu item中使用自定义View 1、可以在xml中自定义item项目为menu。 三、Android 怎么实现自定义menuItem...
一、Android 怎么实现自定义menuItem

1、可以在xml中自定义item项目为menu。

二、怎样在Android Menu item中使用自定义View

1、可以在xml中自定义item项目为menu。

三、Android 怎么实现自定义menuItem

1、可以在xml中自定义item项目为menu。

四、android开发中如何实现手写输入的记事本

1、实现手写功能的主要步骤、自定义两个View,一个是TouchView,用于在上面画图,另一个是EditText,用于将手写的字显示在其中,并且,要将两个自定义View通过FrameLayout帧式布局重叠在起,以实现全屏手写的功能。

2、2在TouchView中实现写字,并截取画布中的字以Bitmap保存。

3、设置定时器,利用handle更新界面。

4、下面是实现的细节、手写的界面设计、如上图所示,和上节的画板界面一致,底部分选项菜单栏,有5个选项,分别是调整画笔大小,画笔颜色,撤销,恢复,以及清空,对于这些功能,之后几节再实现。

5、布局文件activity_handwrite.xml可以看出,里面有两个自定义view,并且通过FrameLayout重叠在一起。

6、先来看com.example.notes.LineEditText,这个其实和添加记事中的界面一样,就是自定义EditText,并且在字的下面画一条线。

7、LineEditText.javapublicclassLineEditTextextendsEditText{privateRectmRectprivatePaintmPaintpublicLineEditText(Contextcontext,AttributeSetattrs){//TODOAuto-generatedconstructorstubsuper(context,attrs)mRect=newRect()mPaint=newPaint()mPaint.setColor(Color.GRAY)}@OverrideprotectedvoidonDraw(Canvascanvas){super.onDraw(canvas)//得到EditText的总行数intlineCount=getLineCount()Rectr=mRectPaintp=mPaint//为每一行设置格式for(inti=0icutLeft?0、cutLeft)cutTop=(0>cutTop?0、cutTop)cutRight=(mBitmap.getWidth()=TOUCH_TOLERANCE||dy>=TOUCH_TOLERANCE){mPath.quadTo(mX,mY,x,y)//mPath.quadTo(mX,mY,(x+mX)/2,(y+mY)/2)//源代码是这样写的,可是我没有弄明白,为什么要这样?mX=xmY=yif(task。

8、=null)task.cancel()//取消之前的任务task=newTimerTask(){@Overridepublicvoidrun(){Messagemessage=newMessage()message.what=1Log.i(线程,来了)handler.sendMessage(message)}}getCutBitmapLocation.setCutLeftAndRight(mX,mY)}}//手抬起时privatevoidtouch_up(){//mPath.lineTo(mX,mY)mCanvas.drawPath(mPath,mPaint)mPath.reset()if(timer。

9、=null){if(task。

10、=null){task.cancel()task=newTimerTask(){publicvoidrun(){Messagemessage=newMessage()message.what=1handler.sendMessage(message)}}timer.schedule(task,1000,1000)//2200秒后发送消息给handler更新Activity}}else{timer=newTimer(true)timer.schedule(task,1000,1000)//2200秒后发送消息给handler更新Activity}}//处理界面事件@OverridepublicbooleanonTouchEvent(MotionEventevent){floatx=event.getX()floaty=event.getY()switch(event.getAction()){caseMotionEvent.ACTION_DOWN、touch_start(x,y)invalidate()//刷新breakcaseMotionEvent.ACTION_MOVE、touch_move(x,y)invalidate()breakcaseMotionEvent.ACTION_UP、touch_up()invalidate()break}returntrue}}这里面的难点就是利用TimerTask和Handle来更新界面显示,需要在onTouchEvent的三个事件中都要通过handle发送消息来更新显示界面。

11、接下来就是在activity里通过handle来得到绘制的字,并添加在editText中。

12、关于配置底部菜单,以及顶部标题栏,这里不再赘述,直接如何将绘制的字得到,并添加在edittext中、得到绘制字体的Bitmap//处理界面Handlerhandler=newHandler(){@OverridepublicvoidhandleMessage(Messagemsg){super.handleMessage(msg)Bundlebundle=newBundle()bundle=msg.getData()BitmapmyBitmap=bundle.getParcelable(bitmap)InsertToEditText(myBitmap)}}其中myBitmap就是取得的手写字,保存在Bitmap中,InsertToEditText(myBitmap)是将该图片添加在edittext中,具体如下、?1privateLineEditTextet_handwrite?1et_handwrite=(LineEditText)findViewById(R.id.et_handwrite)//将手写字插入到EditText中privatevoidInsertToEditText(BitmapmBitmap){intimgWidth=mBitmap.getWidth()intimgHeight=mBitmap.getHeight()//缩放比例floatscaleW=(float)(80f/imgWidth)floatscaleH=(float)(100f/imgHeight)Matrixmx=newMatrix()//对原图片进行缩放mx.postScale(scaleW,scaleH)mBitmap=Bitmap.createBitmap(mBitmap,0,0,imgWidth,imgHeight,mx,true)//将手写的字插入到edittext中SpannableStringss=newSpannableString(1)ImageSpanspan=newImageSpan(mBitmap,ImageSpan.ALIGN_BOTTOM)ss.setSpan(span,0,1,Spannable.SPAN_INCLUSIVE_EXCLUSIVE)et_handwrite.append(ss)}。

五、Android studio如何增加和设置菜单menu

1、打开Androidstudio,首先添加menu的目录文件夹,在res上点击右键,选择new-directory。。

2、输入目录的名称为menu。。

3、在目录中新建menu文件,在menu目录上点击右键,选择new-menuresourcefile。。

4、输入menu文件的名称。。

5、新建目录文件中,程序会自动建立对应的xml布局文件,打开对应的文件。。

6、在文件中建立2个示例用的按钮add和remove。。

7、回到主程序的代码页面。。

8、在主程序代码中新建oncreatoptionmenu方法来导入menu。。

9、代码中会新增oncreatoptionmenu方法,删除默认的代码。。

10、新增在点击menu中2个按钮时分别对应的方法。这样在页面中新增menu并增加menu按钮对应操作的流程就完成了。。

六、怎样在Android Menu item中使用自定义View

1、打开Androidstudio,首先添加menu的目录文件夹,在res上点击右键,选择new-directory。

七、安卓手机如何打开“开发人员选项”菜单

1、点击“系统设置”。

2、点击“关于手机”。

3、找到“版本号”注意:一定是“版本号”,而非“安卓版本”等。

4、连续快速点击版本号5次在点击过程中,如果你停止,就会提示“还有×次,就可以打开“开发人员选项””,你只需接着点击即可,直至提示“已打开‘开发人员选项’”。

5、按返回键,回到“系统设置”界面可以看到,‘开发人员选项’出现了吧??。

八、android开发中如果设置menu的背景,现在都改用action bar了吗?

1、在较新版本的安卓系统手机中,开发者选项已经被隐藏,需要一些操作唤醒喊升或,以郑伍魅族手机为例,进入设置界面。

九、AcitonBar自定义布局

1、自定义Activity主题和ActionBar样式  在新建的android工程的res/values/styles.xml添加自定义ActionBar样式的代码和自定义Activity主题的代码,并在AndroidMainfest.xml中给需要使用该自定义ActionBar的Activity中加入该主题:(1)自定义ActionBar样式代码如下:             @drawable/actionbar_background        useLogo  (2)自定义Activity主题代码如下:        @style/actionbar_def_style   (3)在AndroidManifest.xml文件中需要使用该自定义ActionBar的Activity中加入该主题如下:                                   。

2、在Activity中加载ActionBar的自定义布局(1)ActionBar加载自定义盯付布局的代码封装如下:/***设置ActionBar的布局*@paramlayoutId布局Id* **/publicvoidsetActionBarLayout(intlayoutId){  ActionBaractionBar=getActionBar();  if(null!=actionBar){ 荡耻绵   actionBar.setDisplayShowHomeEnabled(false);    actionBar.setDisplayShowCustomEnabled(true);    LayoutInflaterinflator=(LayoutInflater) this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);    Viewv=inflator.inflate(layoutId,null);    ActionBar.LayoutParamslayout=new  ActionBar.LayoutParams(LayoutParams.FILL_PARENT,LayoutParams.FILL_PARENT);    actionBar.setCustomView(v,layout);  }}(2)在onCreate()方法中调用该方法,并传入自定义的布局文件ID:@OverrideprotectedvoidonCreate(BundlesavedInstanceState){  super.onCreate(savedInstanceState);  setContentView(R.layout.activity_diy_action_bar);  //自定义actionbar的布局  setActionBarLayout(R.layout.actionbar_port_layout);}(3)自定义布局文件“actionbar_port_layout.xml ”代码如下:        。

3、在Action中监听ActionBar中按钮的点击事件/***实现onClick方法,在这里面监听actionbar中按钮的点击事件 * **/publicvoidonClick(Viewv){  switch(v.getId()){  caseR.id.menuBtnId:{    showToast(this,"menuBtn");  }  break;  caseR.id.noteBtnId:{     showToast(this,"noteBtn");  }  break;  caseR.id.downloadBtnId:{     showToast(this,"downloadBtn");  }  break;  caseR.id.editBtnId:{    showToast(this,"editBtn");  }  break;  default:{  }  break;  }}。

4、http://download.csdn.net/detail/zmywly/6922375。

下一篇:没有了 上一篇:张易之的微信经典说说(张爱玲我还有一大毛病就是一旦)