6-18

为参数写注释的方法
6-18_第1张图片
资源编号
6-18_第2张图片
修改TextView 和 ImageView里的东西
6-18_第3张图片
  • setText
  • setImageResource

遇到了一个弱智bug

public void increment(View view){
        quantity = quantity+1;
        display(quantity);

定义button的onClick方法时忘了参数 View view一直报错。而且没有log。。。

判断一个checkBox是否被选中可以使用isChecked()方法,会返回一个boolean类型

boolean hasWhippedCream = whippedCreamCheckBox.isChecked();

一个垂直的LinearLayout 不能滚动,TextView如果显示内容过多,会拓展出屏幕的边缘,这个时候可以在最外面的布局加一个scrollView


    ...
    ...

EditText对象在使用getText时,需要在末尾添加toString()方法。

String name = nameEditText.getText().toString();

建立一个地图intent

Intent intent = new Intent(Intent.ACTION_VIEW);
        intent.setData(Uri.parse("geo:47.6, -122.4"));
        if (intent.resolveActivity(getPackageManager()) != null) {
            startActivity(intent);
        }

if (intent.resolveActivity(getPackageManager()) != null)
这段代码用来防止应用崩溃,先确认intent是否可以被处理。

package com.example.android.justjava;
import android.content.Intent;
import android.net.Uri;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.TextView;


public class MainActivity extends AppCompatActivity {

    // the number of coffees.
    int quantity = 2;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

    }
    public void decrement(View view){
        if(quantity>0){
            quantity = quantity-1;
        }
        display(quantity);
    }

    public void increment(View view){
        quantity = quantity+1;
        display(quantity);

    }
    public void display(int number){
        TextView quantity_text_view = (TextView)findViewById(R.id.quantity_text_view);
        quantity_text_view.setText(""+number);
    }

    public void submitOrder(View view) {

        int price = calculatePrice();
        CheckBox whippedCreamCheckBox = (CheckBox)findViewById(R.id.whippedCream_check_box);
        CheckBox chocolateCheckBox = (CheckBox)findViewById(R.id.chocolate_check_box);
        EditText nameEditText = (EditText)findViewById(R.id.name_editText);
        boolean hasWhippedCream = whippedCreamCheckBox.isChecked();
        boolean hasCholocate = chocolateCheckBox.isChecked();
        String name = nameEditText.getText().toString();
        String priceMessage = createOrderSummary(price,hasWhippedCream,hasCholocate,name);

        Intent intent = new Intent(Intent.ACTION_SENDTO);
        intent.setData(Uri.parse("mailto:")); // only email apps should handle this
        intent.putExtra(Intent.EXTRA_SUBJECT, "Just an order for "+name);
        intent.putExtra(Intent.EXTRA_TEXT, priceMessage);
        if (intent.resolveActivity(getPackageManager()) != null) {
            startActivity(intent);
        }

    }

    private void displayMessage(String priceMessage) {
        TextView orderSummary_text_view = (TextView)findViewById(R.id.summary_text_view);
        orderSummary_text_view.setText(priceMessage);
    }
    private String createOrderSummary(int price, boolean hasWhippedCream, boolean hasChocolate, String name) {
        String priceMessage = "Name: "+name;
        priceMessage += "\nAdd Whipped: " + hasWhippedCream;
        priceMessage += "\nAdd Chocolate: " + hasChocolate;
        priceMessage += "\nQuantity: " + quantity;
        priceMessage += "\nTotal: $" + price;
        priceMessage += "\nThank you";
        return priceMessage;
    }
    private int calculatePrice() {
        return quantity * 5;
    }
}


    

        

        

            

            


        

        

            

            
        
        
        

            
应用支持多语言
6-18_第4张图片

6-18_第5张图片

6-18_第6张图片

在XML文件中引用代码



在java中引用


右键点击string文件夹,然后点击翻译,可添加多种语言


6-18_第7张图片
定义样式
6-18_第8张图片

6-18_第9张图片
6-18_第10张图片
定义主题

https://developer.android.com/training/material/theme.html

6-18_第11张图片

http://www.materialpalette.com 颜色调色板

6-18_第12张图片

你可能感兴趣的:(6-18)