Android_CntextMenu_example_textSize
menu.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/textSize_big"
android:title="放大"/>
<item
android:id="@+id/textSize_small"
android:title="缩小"/> </menu>
layout.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" > <TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/hello_world"
android:textSize="20sp" /> </RelativeLayout>
main.java
package com.example.day10_contextview; import android.os.Bundle;
import android.app.Activity;
import android.view.ContextMenu;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ContextMenu.ContextMenuInfo;
import android.widget.TextView;
import android.widget.Toast; /* contextmenu 作用在view
1.在menu文件的main.xml中编写菜单
2.在activity中创建菜单
在onCreateContextMenu方法中创建
//加载菜单布局
getMenuInflater().inflate(R.menu.main, menu);
3.和view进行绑定
将contextmenu注册到控件
registerForContextMenu(tvHello);
4.触发
长按控件会触发菜单,以对话框的形式展示,点击后自动隐藏 contextmenu和optionsmenu的点击事件都会先触发onMenuItemSelected该方法,
然后该方法再根据menu特征分发到不同的 菜单相应事件,
contextmenu触发onContextItemSelected,
optionsmenu触发onOptionsItemSelected contextmenu对比optionmenu
1.触发条件不一样,optionmenu 点击menu,contextmenu需要长按对应的控件
2.展示,optionmenu 一级菜单在底部展示,二级以对话框展示,contextmenu直接一对话框展示
3.作用点 optionmenu是相对于activity的菜单, contextmenu相对于view
*/
public class MainActivity extends Activity {
private float size ;
private TextView textView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
textView = (TextView) findViewById(R.id.text);
//将contextMenu注册到控件上
registerForContextMenu(textView); }
@Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
//加载菜单布局
getMenuInflater().inflate(R.menu.main, menu); }
/**
* ContextMenu的点击事件
* 实现字体的放大缩小功能
*/
@Override
public boolean onContextItemSelected(MenuItem item) {
size = textView.getTextSize();
switch (item.getItemId()) {
case R.id.textSize_big:
size += 5;
if(size<50){
textView.setTextSize(size);
Toast.makeText(MainActivity.this, "TextView的字体大小:"+size+"sp", 0).show();
}
break;
case R.id.textSize_small:
size -= 5;
if(size>10){
textView.setTextSize(size);
Toast.makeText(MainActivity.this, "TextView的字体大小:"+size+"sp", 0).show();
break;
}
}
return super.onContextItemSelected(item);
} }
Android_CntextMenu_example_textSize的更多相关文章
随机推荐
- POJ 1017 Packets
题意:有一些1×1, 2×2, 3×3, 4×4, 5×5, 6×6的货物,每个货物高度为h,把货物打包,每个包裹里可以装6×6×h,问最少几个包裹. 解法:6×6的直接放进去,5×5的空隙可以用1× ...
- [转] python程序的调试方法
qi09 原文 python程序的调试方法 本文讨论在没有方便的IDE工具可用的情况下,使用pdb调试python程序 源码例子 例如,有模拟税收计算的程序: #!/usr/bin/python de ...
- android广告平台介绍
广告模式: 广告条:最普遍的广告模式,嵌入在应用界面内,用户点击行为会带来收入. 积分墙:应用通过限制功能.去广告等引导用户进入积分墙页面下载广告应用得到积分来换取使用的模式,用户安装完推荐广 ...
- JAVACC详解
JavaCC(Java Compiler Compiler)是一个用JAVA开发的最受欢迎的语法分析生成器.这个分析生成器工具可以读取上下文无关且有着特殊意义的语法并把它转换成可以识别且匹配该语法的J ...
- 富文本HTML编辑器UEditor
Baidu百度开源富文本HTML编辑器UEditor JS代码网 发表于: 2013-10-30 分类:HTML编辑器 点击:2133 UEditor是由百度web前端研发部开发所见即所得富文本H ...
- DELL R710服务器可以安装的VMWare ESX Server 4.1 全套下载带注册码
随着R710的停产,R720随之面世,但DELL R720服务器只支持vmware esxi5.0以上,DELL客户经理给了一套系统安装后序列号无法解决,还是用4.1好了,却又发现怎么都无法安装.按网 ...
- jenkins api调用
在使用jenkins的时候,有时候需要其他外部调用,下面是调用方法,不定期更新 job调用 使用user和password: curl -X POST "jobPath/buildWithP ...
- 稀疏表示(sparse representation)和字典学习
近十几年来,稀疏(sparsity)已经成为信号处理及其应用领域中处于第一位的概念之一.近来,研究人员又致力于过完备(overcomplete)信号表示的研究.这种表示不同于许多传统的表示.因为它能提 ...
- Visual Studio配置OpenCV设置全局的继承属性
1.安装完毕OpenCV后,新建一个CLR空项目,将其取名为"SetingGlobalOpenCVDir"便于以后变更版本时修改.如下图所示: 2.点击"视图->其 ...
- Java集合的小抄 Java初学者必备
在尽可能短的篇幅里,将所有集合与并发集合的特征,实现方式,性能捋一遍.适合所有”精通Java”其实还不那么自信的人阅读. 不断更新中,请尽量访问博客原文. List ArrayList 以数组实现.节 ...