EditText可以使用:TextView.setEnabled(true)来设置为可编辑,其实很简单,写在这里以便以后自己查看。

  Button设置可用性:setVisibility(View.VISIBLE),这样就设置为可用了。其中参数是一个int型

以后有其他的控件的设置,可以再进行补充。

见如下代码的21,22行:

 protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTheme(android.R.style.Theme_Black);
//Return the intent that started this activity.
final Intent intent = getIntent();
//获取intent里到底是绑定action字符串,下面用来判断是点了哪个按钮
final String action = intent.getAction();
setContentView(R.layout.mydiaryedit);//添加对应的layout
System.out.println("intent.getAction():"+intent.getAction());
myToast("intent.getAction():"+intent.getAction());
TextView wyl_tv = (TextView) findViewById(R.id.wyl_txt);
wyl_tv.setText("intent.getAction():"+intent.getAction()+";\n\n"
+ " URI uri = intent.getData(): "+intent.getData()+";\n\n MyDiaryEdit.java的intent:"+getIntent());
mTitleText = (EditText) findViewById(R.id.title);
mBodyText = (EditText) findViewById(R.id.body); confirmButton = (Button) findViewById(R.id.confirm);
modifyButton = (Button) findViewById(R.id.modified); if (EDIT_TEXT_ACTION.equals(action)) {
/*
* EDIT_TEXT_ACTION.equals(action),EDIT_TEXT_ACTION就是前一个
* 页面中intent.setAction的时候设置的哪个字符串,这样就能够判断是不是点了新增日记的按钮了
*/
mState = STATE_EDIT;
mTitleText.setEnabled(false);//设置为不可编辑
mBodyText.setEnabled(false);//设置不可编辑
modifyButton.setVisibility(View.VISIBLE);//把修改按钮设置为可见
mUri = intent.getData();
mCursor = managedQuery(mUri, projection, null, null, null);
mCursor.moveToFirst();
String title = mCursor.getString(1);
mTitleText.setTextKeepState(title);
String body = mCursor.getString(2);
mBodyText.setTextKeepState(body); setResult(RESULT_OK, new Intent(MyDiaryEdit.EDIT_TEXT_ACTION, mUri));
setTitle("编辑日记");
} else if (INSERT_TEXT_ACTION.equals(action)) {
mState = STATE_INSERT;
setTitle("新建日记");
} else { Log.e(TAG, "no such action error");
MyDiaryEdit.this.finish(); return;
} confirmButton.setOnClickListener(new MyBtnOnClickListen());
modifyButton.setOnClickListener(new MyBtnOnClickListen()); }

Button的setVisibility(int visibility),设置可用性,官方文档里的说明如下:

void android.view.View.setVisibility(int visibility)

Set the enabled state of this view.

Parameters:
visibility One of VISIBLE, INVISIBLE, or GONE.
@attr
ref android.R.styleable#View_visibility

由此可见,其他的View应该也可以使用该方法。

Button标签有个andorid:visibility属性,如果设置为 invisible,那么就默认为不可见。如下:

 <Button
android:id="@+id/modified"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:text="click me!编辑"
android:visibility="invisible" >
</Button>

如果想设置为可见,那么Java代码如下:

 modifyButton.setVisibility(View.VISIBLE);//把修改按钮设置为可见

Android中EditText,Button等控件的设置的更多相关文章

  1. android中一个评分的控件

    RatingBar android中一个评分的控件 如何使用 Android Studio下: dependencies { compile 'com.hedgehog.ratingbar:app:1 ...

  2. Android中的自定义视图控件

    简介 当现有控件不能满足需求时,就需要自定义控件. 自定义控件属性 自定义控件首先要继承自View,重写两个构造函数. 第一个是代码中使用的: public MyRect(Context contex ...

  3. android中的五大布局(控件的容器,可以放button等控件)

    一.android中五大布局相当于是容器,这些容器里可以放控件也可以放另一个容器,子控件和布局都需要制定属性. 1.相对布局:RelativeLayout @1控件默认堆叠排列,需要制定控件的相对位置 ...

  4. Android中使用shape来定义控件

    本文章转接于:http://kofi1122.blog.51cto.com/2815761/521605 Android中常常使用shape来定义控件的一些显示属性,今天看了一些shape的使用,对s ...

  5. android 中通过代码创建控件

    package bvb.de.openadbwireless.circle; import android.annotation.TargetApi; import android.app.Activ ...

  6. android中动态修改ImageView控件的宽高度

    本例实现了动态修改ImageView控件的宽高度,有两个按钮,一个按钮实现放大image,一个按钮实现缩小image activity_main.xml <?xml version=" ...

  7. layer过去的时间不能选择,只能选择未来的时间 LayUI中的时间日期控件,设置时间范围,

    默认Layui中的时间控件显示如下: 我当时系统时间是2018-06-07, 我需要做的是2018-06-07之后过去的时间不能选择 <p><span>时间范围:</sp ...

  8. android中关于时间的控件

    1.日期选择器 <DatePicker android:layout_width="wrap_content" android:layout_height="wra ...

  9. 关于ListView中item与子控件抢夺焦点的解决方法

    1.在开发中,listview可以说是我们使用最频繁的控件之一了,但是关于listview的各种问题也是很多.当我们使用自定义布局的Listview的时候,如果在item的布局文件里面存在Button ...

随机推荐

  1. php生成数据字典,代码

    <?php /** * 生成mysql数据字典 */ header("Content-type:text/html;charset=utf-8"); // 配置数据库 $da ...

  2. 微信上传素材返回 '{"errcode":41005,"errmsg":"media data missing"}',php5.6返回

    问题描述: php5.5已经把通过@加文件路径上传文件的方式给放入到Deprecated中了.php5.6默认是不支持这种方式了 解决办法curl处理 function curl_post($url, ...

  3. [LeetCode]题解(python):087-Scramble String

    题目来源: https://leetcode.com/problems/scramble-string/ 题意分析: 给定一个字符串,字符串展成一个二叉树,如果二叉树某个或多个左右子树颠倒得到的新字符 ...

  4. Javascript中的位运算符和技巧

    ECMAScript 整数有两种类型,即有符号整数(允许用正数和负数)和无符号整数(只允许用正数).在 ECMAScript 中,所有整数字面量默认都是有符号整数,这意味着什么呢? 有符号整数使用 3 ...

  5. oracle命令大全

    内容包括三大项:    1.oracle基本操作语句 2.SQLServer基本操作语句 3.各种数据库连接方法 ******************************************* ...

  6. 此windows副本不是正版解决方法

    老爸的win7今天黑屏 右下角出现 Windows7 内部版本7601 此windows副本不是正版 网上零散地找到了解决办法 写博汇总一下 我的情况是 电脑属性中的windows激活显示: 状态不可 ...

  7. poj 3264 Balanced Lineup(线段树、RMQ)

    题目链接: http://poj.org/problem?id=3264 思路分析: 典型的区间统计问题,要求求出某段区间中的极值,可以使用线段树求解. 在线段树结点中存储区间中的最小值与最大值:查询 ...

  8. QQ聊天原理初识

    1:qq之间文件的传输是通过p2p通信进行的. 2:qq之间的表情发送实际上就是文字的发送,是client再接受到文字之后在本地自己进行转换 3:qq之间的通信既能够通过udp也能够通过Tcp 尽管u ...

  9. ie调试控制台

    function initConsole() { var console = document.createElement('div'); console.id = 'errorConsole'; d ...

  10. 【前端】一句命令快速合并压缩 JS、CSS

    引用自:一句命令快速合并 JS.CSS 在项目开发环境下,我们会把 JS 代码尽可能模块化,方便管理和修改,这就避免不了会出现一个项目自身 JS 文件数量达到10个或者更多. 而项目上线后,会要求将所 ...