zoukankan      html  css  js  c++  java
  • Android Studio学习笔记(1)

      我是通过哔哩哔哩的极客开发者up主的视频学习的,讲得还算很详细,对于我这种没有学习Java的人来说还说能听得懂。在此特别感谢up主!

      今天学习了Android Studio的环境搭建,主要要安装JDK和JRE。然后是修改环境变量。然后就是安装Android Studio,带虚拟机。安装了Android Studio之后就有安装SDK,我是通过下载的方式进行安装,中途等了挺久时间。安装好了后建立工程就有各种报错,对于不懂英文的我,过程感觉十分痛苦,每一次的错误我都是通过百度翻译进行查阅,然后在百度上搜索遇到同样问题的案例,照着他们的提示的方法进行了一系列的修改,费了九牛二虎之力后,终于我的开发环境搭建好了。

      接下来我学习了up主初次录制的视频——编写生日贺卡APP,这看似简单的APP,或许对于一些大佬来说不算什么,但对于刚入门的小白来说,还算不错,因为至少知道了那么回事。

      在这里说下这个视频我学到的

      1)控件TextView(文本框)

         android:layout_margin="20dp"            //边框距20

         android:textSize="22dp"              //字体大小

         android:textColor="@android:color/holo_red_light"   //设置字体颜色红色

      2)控件ImageView(图本框)

         android:layout_centerInParent="true"        //居中

         android:src="@drawable/bathdays"         //选择对用的图片为位置

      3)控件Button(按键)

         android:id="@+id/btn"               //确定ID为btn

         android:layout_margin="10dp"           //板式边距

         android:layout_alignParentBottom="true"      //放到最后

        

    注:以上纯属自己根据up主的视频学习理解得到的,大神勿喷,若有更好的理解麻烦告知,在此感激不尽,谢谢!

    接下就是Java代码,在开头我就是说明了我没有Java基础,所以对这些布局还有定义不太理解,但还是记下较好,以后学习总会去理解他

    public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    //显示布局
    setContentView(R.layout.activity_main);

    //初始化布局
    intUI();
    }

    以上应该就是主函数,相当于我学的C语言中的main。这里做了一个初始化布局,此外还在这学到实用快捷键,Alt+Enter可以直接写出这个函数!
    private void intUI() {
    //获取媒体播放对象
    final MediaPlayer mediaPlayer= MediaPlayer.create(getApplicationContext(),R.raw.music);
    //注册点击事件
    findViewById(R.id.btn).setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
    if(mediaPlayer.isPlaying()) {
    mediaPlayer.pause();
    }else{
    mediaPlayer.start();
    }
    }
    });
    }

    这样就把简易生日贺卡app做好了。感觉还行,日后得看看Java语言学习下他的定义格式。



    再者就是进入up主的系统学习,由0-3集,前几集倒还好,到了03模拟小相册的时候有点不太懂了。那么久说说看了这些学习的收获
    因为有了生日贺卡APP这个简易的教程,前几集跟之前差不多。
    1.首先学习了认识Android Studio的界面。了解了我们建立工程一般选为Android工程就行,(这是我们常用编写代码的),app和Gradle Scripts。
    这里重点讲下app这个文件夹,打开app里面有3个子文件,①manifests②java③res
    而我们常用的3个文件分别是这①中的AndroidManifest.xml,②->layout->MainActivity,③layout->activity_main.xml

    第一个文件就是相当于启动文件,配置这个工程名称还有一些启动的事项。
    第二个文件就是变成代码文件,主要书写一些逻辑关系。
    第三个文件就是书写布局的文件,主要是将控件的摆放(初学者使用代码编写较好)。

    2.然后学习了线性基础布局LinearLayout
    android:orientation="vertical"    //线性布局的方向  vertical竖直排列|horizontal横向排列

    到了03集就是模拟相册的APP
    这里使用了1个ImageView,用于显示图片的
    1个TextView,用于提示图片的信息
    2个Button,用于翻页的

    <ImageView
    android:id="@+id/iv_show"
    android:layout_width="match_parent"
    android:layout_height="50dp"
    android:layout_weight="1"          //剩余控件的占用
    android:background="@android:color/background_dark" />  //设置为黑色的背景
       
    <TextView
    android:id="@+id/tv_show"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="图片信息"
    android:gravity="center"  //居中  
    android:padding="10dp"    //内边距
    />
    
    
    <LinearLayout
    android:gravity="center"         //居中
    android:orientation="horizontal"    //竖直排列
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <Button
    android:id="@+id/btn_previous"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="上一张" />

    <Button
    android:id="@+id/btn_next"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="下一张" />

    </LinearLayout>

    /********这里采用线性的布局两个按键的排列***************/

    以上就是②->layout->MainActivity的代码


    接下我们就要编写Java逻辑代码

    private ImageView mImage;
    private TextView mText;
    private int num;
    private int index;
    private String[] title;
    private int[] images;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    //初始化控件
    initView();
    //初始化数据
    initData();

    }
    private void initData() {
    title = new String[]{"No.1","No.2","No.3","No.4","No.5"};
    images = new int[]{R.drawable.a,R.drawable.b,R.drawable.c,R.drawable.d,R.drawable.e};

    mImage.setImageResource(images[0]);
    mText.setText(title[0]);

    num = title.length;//图片的张数
    index = 0;//当前显示图片的索引
    }
    private void initView(){
    mImage = findViewById(R.id.iv_show);
    mText = findViewById(R.id.tv_show);
    findViewById(R.id.btn_previous).setOnClickListener(this);
    findViewById(R.id.btn_next).setOnClickListener(this);
    }

    @Override
    public void onClick(View view) {
    switch(view.getId()){
    case R.id.btn_previous:
    //上一张
    if(index==0){
    index = title.length - 1;
    }else {
    index--;
    }
    break;
    case R.id.btn_next:
    //下一张
    if(index==4){
    index = 0;
    }else{
    index++;
    }
    break;
    }
    updateImageAndTitle();
    }

    private void updateImageAndTitle() {
    mImage.setImageResource(images[index]);
    mText.setText(title[index]);
    }

    经过上面的代码学习,我学会快捷键Ctrl+Alt+F声明全局变量,至于其他怎么来的,我感觉又忘得差不多,明天赶着再弄一遍是怎么个意思,至于Java的程序架构得好好理理。




    综上所述,就是我今天学习Android Studio的笔记!!!
  • 相关阅读:
    FCKeditor firefox Ajax提交,内容为空.解决.
    Javascript:Go to top of page
    js实现两级联动下拉列表
    php+mysql实现二级联动下拉列表
    ajax 实现两级级联下拉列表
    SharpDevelop_3.2.1.6466_Setup软件安装汉化
    c#拓展项目作业
    摇色子(两颗色子)
    C#编程实践51题目解答
    编程实践53
  • 原文地址:https://www.cnblogs.com/xiaojian98/p/11925451.html
Copyright © 2011-2022 走看看