老师能帮我看一下 单选对话框哪儿出问题了吗,我用手机调试 单选对话框不会弹出来

老师能帮我看一下 单选对话框哪儿出问题了吗,我用手机调试 单选对话框不会弹出来

package com.example.dateandtimedialog;

import android.app.AlertDialog;
import android.app.DatePickerDialog;
import android.content.DialogInterface;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.DatePicker;
import android.widget.TextView;
import android.widget.Toast;


import java.util.Calendar;


public class MainActivity extends AppCompatActivity {


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        TextView tc=findViewById(R.id.text_view);
    }

    public void myClick(View view){
        switch (view.getId()){
            case R.id.date_set_dialog:
                DatePickerDialog dll= new DatePickerDialog(MainActivity.this, new DatePickerDialog.OnDateSetListener() {
                    @Override
                    public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
                        Toast.makeText(MainActivity.this,Integer.toString(year)+"年"+Integer.toString(month+1)+"月"+Integer.toString(dayOfMonth)+"日",Toast.LENGTH_LONG).show();
                    }
                }, Calendar.DAY_OF_YEAR,Calendar.DAY_OF_MONTH,Calendar.DATE);
                dll.show();
                break;
            case R.id.sex_select_dialog:
                AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
                builder.setTitle("性别选择");
                builder.setIcon(R.drawable.ic_launcher_background);
                builder.setSingleChoiceItems(R.array.sex_string,android.R.layout.simple_selectable_list_item, new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        Toast.makeText(MainActivity.this,"你选择了:"+Integer.toString(which),Toast.LENGTH_SHORT).show();
                        dialog.dismiss();
                    }
                });
                builder.show();

                break;

        }

    }


}
<resources>
    <string name="app_name">DateAndTimeDialog</string>
    <string-array name="sex_string">
        <item>男</item>
        <item>女</item>
        <item>性别未知</item>
        <item>你猜</item>
    </string-array>
    <string-array name="habbit_string">
        <item>编程</item>
        <item>LOL</item>
        <item>旅游</item>
        <item>篮球</item>
    </string-array>
</resources>

http://img1.sycdn.imooc.com//climg/5ca62ad00001c78c03020094.jpg

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
irista23 2019-04-08 09:19:06

例如可以使用String[] items = getResources().getStringArray(R.array.XXX);items数组中的数据就是arrays.xml文件中对应资源R.array.XXX中的数据

irista23 2019-04-06 10:07:14

老师测试你的单选对话框部分代码在华为手机上可以正常弹出单选对话框的,你检查下代码资源等放置是否正确,尤其是下图红框圈起来的图片资源是否正确,另外你用模拟器跑一下,如果能弹出来,就是你手机是不是屏蔽了一些对话框弹出的权限,可以查下对应型号手机权限问题。

http://img1.sycdn.imooc.com//climg/5ca809570001f77613980566.jpg

  • 提问者 1yats #1
    我把图标资源语句删除了,在模拟器上还是显示不出单选对话框?
    2019-04-06 11:26:02
  • irista23 回复 提问者 1yats #2
    你的布局文件对应按钮添加了onClick属性了没有或者你把布局文件贴出来
    2019-04-06 11:28:32
  • 提问者 1yats 回复 irista23 #3
    感谢老师,我发现自己另外两个button没有添加onClick属性!麻烦老师,还有个问题请教一下,就是如何获取资源里的数组呀
    2019-04-06 11:59:51
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师