文档章节

radioButton空指针

mutouzhang
 mutouzhang
发布于 2014/03/24 16:57
字数 272
阅读 223
收藏 1

已经在XML中设置了一个radioButton为选中,但是当运行起来什么都不选择,用默认的情况,点击按钮会报空指针,解决办法,初始化把radioButton根据ID设置成男,然后setChecked(true);就可以了

activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    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" >

    <RadioGroup
        android:id="@+id/radiogroup"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal" >

        <RadioButton
            android:id="@+id/male"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="男" />

        <RadioButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="女" />
    </RadioGroup>

    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="点我显示选中项" />

</LinearLayout>

MainActivity

package com.example.radiobuttontest2;

import android.os.Bundle;
import android.R.integer;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.Toast;

public class MainActivity extends Activity {

	private RadioGroup radioGroup;
	private Button button;
	private RadioButton radioButton;
	int selectedRadioButtonId;
	
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        radioButton = (RadioButton) findViewById(R.id.male);//就是这2句,解决空指针
        radioButton.setChecked(true);
        
        radioGroup = (RadioGroup) findViewById(R.id.radiogroup);
        button = (Button) findViewById(R.id.button);
        
        button.setOnClickListener(new OnClickListener()
		{
			
			@Override
			public void onClick(View v)
			{
				selectedRadioButtonId = radioGroup.getCheckedRadioButtonId();
				radioButton = (RadioButton) findViewById(selectedRadioButtonId);
				
				Toast.makeText(MainActivity.this, "你选择的性别是"+radioButton.getText(), Toast.LENGTH_SHORT).show();
			}
		});
        
        
    }


  
    
}


© 著作权归作者所有

共有 人打赏支持
mutouzhang
粉丝 6
博文 190
码字总数 91235
作品 0
洛阳
程序员
私信 提问
点击文字,把input type="radio"也选中

1、 <label> <input type="radio" name="radiobutton" value="radiobutton" />测试? </label> 2、 <label for="radiobutton"> <input type="radio" name="radiobutton" id="radiobutton" va......

Jack088
2015/06/23
0
0
[Android开发]关于RadioButton的checked问题

在Android的UI控件中,关于RadioXX有两个控件,一个是RadioGroup,一个是RadioButton。 顾名思义,一般情况下,会使用RadioGroup作为RadioButton的父控件。 如何设置RadioButton的选中状态 ...

Haffe
2014/09/28
0
0
RadioGroup动态添加RadioButton,并且获得事件

由于有许多的RadioButton是动态的,不是固定的一些,所以需要在代码中,动态的添加到RadioGroup中,下面是我的实现方法。 1、添加RadioButton到RadioGroup中 [java] view plaincopy RadioGro...

postdep
2014/12/21
0
0
单选按钮(RadioButton)——Mars Android开发视频教程之第一季第十集(重)

1· 什么是单选按钮(RadioButton)? 这样的按钮就叫单选按钮,这里有两组单选按钮;一组单选按钮中,只能有一个选项被选中; 2· RadioGroup与RadioButton RadioGroup代表组;RadioButton...

周田
2015/08/18
0
0
J2ME GUI实战之六 ----------LWUIT的Label、CheckBox、RadioButton

本文来自:http://blog.csdn.net/hellogv/ ,转载必须注明出处! 文章写到这里,想必大家也对LWUIT有个大概的了解了,至少也该知道LWUIT可以做些什么。九宫图只是LWUIT的Button控件的典型应用...

晨曦之光
2012/03/14
114
0

没有更多内容

加载失败,请刷新页面

加载更多

再谈使用开源软件搭建数据分析平台

三年前,我写了这篇博客使用开源软件快速搭建数据分析平台, 当时收到了许多的反馈,有50个点赞和300+的收藏。到现在我还能收到一些关于dataplay2的问题。在过去的三年,开源社区和新技术的发...

naughty
今天
3
0
C++网络编程(一)gRPC的编译

Google是真滴烦,整个编译链全是自家产品,在编译之前先来安装一堆东西 安装环境依赖 chocolatey Windows下的包管理系统,没有他就慢慢去下载下面的一堆乱七八糟的东西吧。CMD下执行下面这句...

Pulsar-V
今天
3
0
Python3的日期和时间

python 中处理日期时间数据通常使用datetime和time库 因为这两个库中的一些功能有些重复,所以,首先我们来比较一下这两个库的区别,这可以帮助我们在适当的情况下时候合适的库。 在Python文...

编程老陆
今天
2
0
分布式面试整理

并发和并行 并行是两个任务同时进行,而并发呢,则是一会做一个任务一会又切换做另一个任务。 临界区 临界区用来表示一种公共资源或者说是共享数据,可以被多个线程使用,但是每一次,只能有...

群星纪元
今天
3
0
手机通过wifi遥控arduino

手机下载Blinker 从Blinker官网下载手机App,安装到手机。 手机连接WiFi。 点击我的设备右上角的"+"添加设备,选择Arduino -> wifi接入,复制密钥以备后续使用。 点击新建的设备,可以在新界...

davidwbnu
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部