Android Studio安卓开发入门第一天

1.用Button实现页面跳转

(1)在主页面activity_main.xml中添加Button:

  • wrap_content表示让当前控件的大小能够刚好包含住里面的内容,match_parent表示让当前控件的大小和父布局的大小一样,也就是由父布局来决定当前控件的大小(fill_parent相同意义,官方更推荐match_parent)。
  • text指定按钮上显示的文字。
  • layout_centerInParent设置为true让按键放置在父布局的中间。
  • id的格式必须是@+id/XXX。(设置id以便调用事件)

(2)在MainActivity主页面活动中,给Button设置监听器并重写onClick事件:

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
//        getSupportActionBar().hide();
        Button abc= findViewById(R.id.abd);
        abc.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this, MainActivity2.class);
                startActivity(intent);
            }
        });

    }
}
  • getSupportActionBar().hide()表示让当前页面上侧的标题栏隐藏。
  • 新建Button来获取id为abd的按钮(采用findViewById(R.id.XXX)的方式获取)。
  • 使用按钮的setOnClickListener(匿名类)。
  • 在new View.OnClickListener()中重写onClick事件。
  • Intent是Android程序中各组件之间进行交互的一种重要方式,它不仅可以指明当前组件想要执行的动作,还可以在不同组件之间传递数据。
  • 在onClick事件中首先构建了一个Intent,传入MainActivity.this作为上下文,传入MainActivity2.class作为目标活动,“意图”就是在MainActivity这个活动的基础上打开MainActivity2这个活动,然后通过startActivity(intent)来执行这个intent。

2.跳转后的页面中创建Textview并实现点击按钮修改文段

(1)在layout中的activity_main2中设置TextView和按钮:



    
    
    
  • 若使用LinearLayout线性布局,需要指明方向即orientation(一般手机的orientation为vertical竖直的)

(2)在MainActivity2中实现文段修改操作:

public class MainActivity2 extends AppCompatActivity {

    boolean isChanged=false;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);
        TextView t2=findViewById(R.id.d2);
        Button b2=findViewById(R.id.b3);
        b2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (!isChanged){
                    Date now=new Date();
                    SimpleDateFormat s=new SimpleDateFormat("yyyy-年-MM-月-dd-日");
                    String ss=s.format(now);
                    t2.setText(ss);
                    isChanged=true;
                }
                else {
                    t2.setText("afcugdysvdskisdh");
                    isChanged=false;
                }
            }
        });
    }
}
  • 首先在全局设置了isChanged的布尔变量,如果为false则对文段内容进行修改,否则则不修改。
  • 在onCarete中通过findViewById获取文段和按钮的id。
  • 对按钮设置监听器,如果需要修改则设置Date变量,并用SimpleDateFormat的format进行格式化,并格式化为字符串,文段textview再调用setText(此字符串)则可实现文段的修改。

3.有关文件相关操作

        File files=getExternalFilesDir("");
        File a=new File(files.getAbsolutePath()+"/time");
        try {
            a.createNewFile();
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
        try {
            BufferedWriter w=new BufferedWriter(new FileWriter(a));
            Date now=new Date();
            SimpleDateFormat s=new SimpleDateFormat("yyyy-年-MM-月-dd-日");
            String ss=s.format(now);
            w.write(ss);
            w.flush();
            w.close();
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
  • File files=getExternalFilesDir("");若为空字符串则默认在Android的data的file里进行操作。
  • 在创建新的文件夹时使用File a=new File(files.getAbsolutePath()+"/XXXX")表示在files文件下再创建一个文件夹叫“XXXX”。
  • 接着调用a.createNewFile()进行创建。(要使用try-catch捕获可能发生的异常)。
  • 接着进行文件写入操作,使用BufferedWriter w=new BufferedWriter(new FileWriter(a));写入刚刚得到的时间字符串w.write(ss);注意之后一定要用flush才能把缓冲区写入的内容真正写入到文件中去。(最后调用close,同时也要使用try-catch捕获可能发生的异常)。

4.在AndroidManifest.xml进行相关的注册

(1)对用户权限进行设置


  • CAMERA即用户在使用此应用时可以打开摄像头。
  • MANAGE_EXTERNAL_STORAGE即用户可以在外部存储对文件进行操作(一般都是在安卓内部存储操作,Android中data的文件夹中进行操作)。

5.对于app主题的修改

(1)在themes.xml中对主题风格进行设置