Android应用开发一课一得

本文介绍了使用AndroidStudio进行Android应用开发的基础步骤,包括安装配置开发环境、创建项目、理解UI组件、XML布局和错误处理。作者分享了简单的计算器应用代码示例,强调了学习资源如官方文档和在线课程的重要性。
摘要由CSDN通过智能技术生成

  在这个学期我有幸接触了Android应用开发,并深入了解了这个强大的移动应用开发平台。通过学习和实践,我对Android的开发流程、核心概念和常见技术有了基本的理解。在本篇博客中,我将分享我在Android开发方面的学习心得和经验,以及对未来发展的展望。

一、Android的入门教程

Android Studio是一款由谷歌官方提供的集成开发环境(IDE),用于开发基于Android平台的移动应用程序。下面我来简单介绍一些使用 Android Studio 开发 Android 应用的必要步骤和注意事项:

  1. 安装并配置开发环境 首先,您需要安装Java Development Kit(JDK)。接着,请下载和安装最新版本的Android Studio, 这里也包含了所有必要工具和库。

  2. 创建一个项目 打开Android Studio并创建一个新项目。选择“Empty Activity”选项模板来生成你自己的空白Activity类。

     

  3. 了解基本组件 在编写代码之前,请确保了解与UI交互相关的常见元素:Activities、Fragments等,并且熟悉如何拉取网络请求、对数据进行存储等重要原则操作。

  4. 学习XML布局文件语法 更多关于每个元素及其相应属性的详细信息可以查看官方文档。理解如何将这些元素结合起来,并按照您真正想要实现哪种用户界面设计出所需布局。

  5. 常见错误处理方法 无论谁都会遇到问题或挫折。使用Stack Overflow搜索已有答案,以便更好地理解并快速通过障碍点进入正轨.

  6. 使用Git 管理源码 为你账号设置SSH认证,在GitHub上选择创建Repo时上传本地仓库即可

以上是 Android 入门教程的几个步骤,希望能够为您开发Android应用程序提供一定的参考和指引。

二、页面介绍

当你第一次打开一个Android工程时,在主界面会显示出一个具有如下功能区域的IDE用户界面:

  • Project视图:展示当前工程文件;
  • Editor视图:编辑器窗口;
  • 左侧导航栏:Project选项卡可切换Project视图与Structure页面;Favorites(收藏夹)选项卡将展示我们添加收藏夹条目,在app文件变得庞杂之后非常实用;
  • 底部拓展菜单栏 : 它提供了大量辅助调试, 整合JUnit测试, 内置Git插件等等;

三、运行程序

在编写代码时通常会遵循Debugging(调试) - Compile and Run (编译运行) - Test (测试) 的流程来进行。在AS里运行程序,你需要在顶部菜单栏选择一种运行模式,比如像是Debug 或者 Run, 点击小绿三角来搜索手机或Android虚拟机,并把应用安装到设备上。

四、制作应用

我们以简易的计算器为例,方法代码如下:

 public void onClick(View view) {
        String str = neirong.getText().toString();
        String str1 = jieguo.getText().toString();
        System.out.println(str1);
        switch (view.getId()) {
            case R.id.bnt_0:
            case R.id.bnt_1:
            case R.id.bnt_2:
            case R.id.bnt_3:
            case R.id.bnt_4:
            case R.id.bnt_5:
            case R.id.bnt_6:
            case R.id.bnt_7:
            case R.id.bnt_8:
            case R.id.bnt_9:
            case R.id.bnt_xiaoshudian:

                if (flag) {
                    flag = false;
                    str = "";
                    neirong.setText("");
                    jieguo.setText("");
                }


                neirong.setText(str+((Button) view).getText());
                break;

            case R.id.bnt_jiahao:
            case R.id.bnt_jianyu:
            case R.id.bnt_chengyu:
            case R.id.bnt_chuyu:

                if (flag) {
                    flag = false;
                    str = "";
                    neirong.setText("");
                }

                if(str1!=null&&!str1.equals("")){

                    neirong.setText(str1+ " "+ ((Button) view).getText() + " "+str);
                }else {

                    neirong.setText(str+ " "+ ((Button) view).getText() + " ");
                }

                break;
            case R.id.bnt_dl:

                if(   str != null && !str.equals("")){
                    neirong.setText(str.substring(0, str.length() - 1));
                }else {
                    jieguo.setText("");
                }
                break;


            case R.id.bnt_qk:
                flag = false;
                str = "";
                neirong.setText("");
                jieguo.setText("");
                break;

            case R.id.bnt_dengyu:
                getResult();
                break;

        }


    }

    public void getResult() {
        String input=neirong.getText().toString();


        if (input== null || input.equals(" ")) {
            return;
        }

        if (!input.contains(" ")) {

            return;
        }

        if (flag) {
            flag = false;
            return;
        }
        flag = true;


        String str1 = input.substring(0, input.indexOf(" "));
        String op = input.substring(input.indexOf(" ")+1, input.indexOf(" ") + 2);
        String str2 = input.substring(input.indexOf(" ") + 3);



        double dou1 = 0;
        if (!str1.equals("") && !str2.equals("")) {

            double d1 = Double.parseDouble(str1);
            double d2 = Double.parseDouble(str2);


            if (op.equals("+")) {
                dou1= d1+d2;
            } else if (op.equals("-")) {
                dou1= d1-d2;
            } else if (op.equals("*")) {
                dou1= d1 * d2;
            } else if (op.equals("/")) {


                dou1= d1 / d2;

            }


            if (d2 == 0) {
                Toast.makeText(Computer_simulation.this,"除数不能为零",Toast.LENGTH_SHORT).show();
                jieguo.setText("");
            }else {
                if (!str1.contains(".") && !str2.contains(".") && !op.equals("/")) {
                    int i = (int) dou1;
                    jieguo.setText(i + "");
                } else {  //如果没有小数点
                    jieguo.setText(dou1+ "");
                }
            }
        } else if (!str1.equals("") && str2.equals("")) {
            str2=str1;
            double d1 = Double.parseDouble(str1);
            double d2 = Double.parseDouble(str2);

            if (op.equals("+")) {  //加
                dou1= d1+d2;
            } else if (op.equals("-")) { //减
                dou1= d1-d2;
            } else if (op.equals("*")) { //乘
                dou1= d1 * d2;
            } else if (op.equals("/")) {  //除
                //除数为0不计算
                dou1= d1 / d2;
            }
            if (!str1.contains(".") && !str2.contains(".") && !op.equals("/")) {
                int i = (int) dou1;
                jieguo.setText(i + "");
            } else {  //没有小数点
                jieguo.setText(dou1+ "");
            }
        } else if (str1.equals("") && !str2.equals("")) {

            double d3 = Double.parseDouble(str2);
            if (op.equals("+")) {
                dou1= 0 + d3;
            } else if (op.equals("-")) {
                dou1= 0 - d3;
            } else if (op.equals("*")) {
                dou1= 0;
            } else if (op.equals("/")) {
                //除数为0不计算
                dou1= 0;
            }
            //没有小数点,int类型
            if (!str2.contains(".")) {
                int i = (int) dou1;
                str1="0";
                neirong.setText(str1+op+str2);
                jieguo.setText(i + "");
            } else {  //有小数点
                jieguo.setText(dou1+ "");
            }
        } else {

            jieguo.setText("");
        }


    }

成果如下:

 五、结尾

学习安卓可以通过Android官网上提供了详细的开发文档和 API,可以帮助初学者建立扎实的知识体系。还可以在在线教程中学习,有很多不错的在线培训资源可供选择,例如 CourseraUdacityCodecademy 等等。这些平台通常都提供结构化课程,涵盖从入门到高级开发所需的基本技能和知识。

希望本次的Android一课一得对您有所帮助,了解到了基础的开发流程和常用工具。当然,这只是一个入门级别的介绍,并不能代替深入学习和实践。如果您对Android开发感兴趣,可以进一步阅读相关书籍、教程或参加培训班;同时也要不断积累经验,在实际应用中提升自己的能力水平。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值