安卓做业3.21

  • 任务1
  • 要求:javascript

    1. 图片随着鼠标移动位置,并显示位置的坐标信息
         2. 当用户单机退出按钮时,给出提示信息:“再按一次退出程序”

——————————————————————————————html

xml文件java

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools"
   android:id="@+id/activity_move_dog"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:orientation="vertical"
   tools:context="com.example.administrator.move_dog.MoveDog"
   android:weightSum="1">

   <ImageView
       android:id="@+id/img_cat"
       android:layout_width="70dp"
       android:layout_height="67dp"
       android:layout_gravity="center_vertical"
       android:src="@drawable/abc1" />
</LinearLayout>

接下来在java中实现要求的效果,实现要求1只须要重载一个ontouchevent事件便可android

java文件代码:
``` javascript
public class MoveDog extends AppCompatActivity {
private ImageView img_cat;ide

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_move_dog);
    img_cat = (ImageView) findViewById(R.id.img_cat);
}

@Override
public boolean onTouchEvent(MotionEvent event) {
    if (event.getAction()==MotionEvent.ACTION_MOVE){
        float x = event.getX();
        float y = event.getY();
        String cat = "x坐标:" + x + "y坐标:" + y;
        Toast.makeText(this,cat,Toast.LENGTH_LONG).show();
        img_cat.setX(x - 50);
        img_cat.setY(y - 200);
    }
    return super.onTouchEvent(event);
}

```布局

————————————————————————
在实现要求2中的效果 用了点击主菜单中的退出菜单弹出对话框的方式ui

代码以下:
``` javascript
@Override
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(menu.NONE,Menu.FIRST+1,1,"退出").setIcon(android.R.drawable.ic_menu_delete);
return true;
}this

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    switch (item.getItemId()){
        case Menu.FIRST+1:
            AlertDialog.Builder builder = new AlertDialog.Builder(MoveDog.this);
            builder.setMessage("肯定关闭程序吗?");

            builder.setPositiveButton("肯定",new DialogInterface.OnClickListener(){
                @Override
                public void onClick(DialogInterface dialogInterface,int i) {
                    finish();
                }
            });

            builder.setNegativeButton("取消",new DialogInterface.OnClickListener(){
                @Override
                public void onClick(DialogInterface dialogInterface,int i){
                    dialogInterface.dismiss();
                }
            });

            builder.create().show();
            break;
    }
    return super.onOptionsItemSelected(item);
}

```code

实现效果:
xml


  • 任务2
  • 要求:
  • 1.使用滚动字幕显示标题”please choose a flower you like“
  • 2.使用RadioGroupRadioButton建立两行三列的单选按钮
  • 3.当用户选中一花名时,在页面上显示这种花的图片

效果图:

滚动字幕效果的实现
``` javascript

完整xml文件代码
  ```javascript 
  <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  android:id="@+id/activity_main"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
 android:orientation="vertical"
  tools:context="com.example.administrator.plantphoto.MainActivity"
  android:weightSum="1">
  <TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:textSize="50sp"
      android:textColor="@color/colorAccent"
      android:text="Please choose a flower you like!"
      android:ellipsize="marquee"
      android:marqueeRepeatLimit="marquee_forever"
      android:singleLine="true"
      android:id="@+id/txt_wz"
      android:focusable="true"
      android:focusableInTouchMode="true"/>
  
  <LinearLayout
      android:layout_width="match_parent"
      android:layout_height="50dp">
  </LinearLayout>

  <RelativeLayout
      android:layout_width="match_parent"
      android:layout_height="141dp">
      <ImageView
          android:layout_width="match_parent"
          android:layout_height="match_parent"
          android:id="@+id/img" />
  </RelativeLayout>


  <LinearLayout
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:layout_weight="12.42">
  </LinearLayout>


  <LinearLayout
      android:layout_width="390dp"
      android:layout_height="wrap_content"
      android:orientation="vertical">
      <RadioGroup
          android:id="@+id/group_one"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:orientation="horizontal"
          android:layout_gravity="center">
          <RadioButton
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:text="梅 花  "
              android:textSize="20sp"
              android:id="@+id/rbtn_10"
              android:onClick="myclick"/>
          <RadioButton
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:text="石楠花 "
              android:textSize="20sp"
              android:id="@+id/rbtn_11"
              android:onClick="myclick11"/>
          <RadioButton
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:text="象牙花"
              android:textSize="20sp"
              android:id="@+id/rbtn_12"
              android:onClick="myclick12"/>
      </RadioGroup>


      <RadioGroup
          android:id="@+id/group_two"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:layout_gravity="center"
          android:orientation="horizontal">

          <RadioButton
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:text="绣球花"
              android:textSize="20sp"
              android:id="@+id/rbtn_20"
              android:onClick="myclick20"/>

          <RadioButton
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:text="玉兰花"
              android:textSize="20sp"
              android:id="@+id/rbtn_21"
              android:onClick="myclick21"/>
          <RadioButton
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:text="牡丹花  "
              android:textSize="20sp"
              android:id="@+id/rbtn_22"
              android:onClick="myclick22"/>
      </RadioGroup>
  </LinearLayout>




</LinearLayout>

接下来讲点击事件的执行 在监听事件是经过在xml布局文件中对应得Activity中定义一个事件处理方法 public void myClick(View source) source对应事件源(组件) 接着布局文件中对应要触发事件的组建,设置一个属性:onclick = "myclick"来实现 在网上学到的方法在作做业中试了试

参考[](http://www.runoob.com/w3cnote/android-tutorial-listen-event-handle.html)

java文件
```javascript

public class MainActivity extends AppCompatActivity {
private RadioButton rbtn_10;
private RadioButton rbtn_11;
private RadioButton rbtn_12;
private RadioButton rbtn_20;
private RadioButton rbtn_21;
private RadioButton rbtn_22;
private ImageView img;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    rbtn_10=(RadioButton)findViewById(R.id.rbtn_10);
    rbtn_11=(RadioButton)findViewById(R.id.rbtn_11);
    rbtn_12=(RadioButton)findViewById(R.id.rbtn_12);
    rbtn_20=(RadioButton)findViewById(R.id.rbtn_20);
    rbtn_21=(RadioButton)findViewById(R.id.rbtn_21);
    rbtn_22=(RadioButton)findViewById(R.id.rbtn_22);
    img=(ImageView)findViewById(R.id.img);
    
     }

    public void myclick (View source) {
        if (rbtn_10.isChecked()) {
            img.setImageResource(R.drawable.mei);
            rbtn_11.setChecked(false);
            rbtn_12.setChecked(false);
            rbtn_20.setChecked(false);
            rbtn_21.setChecked(false);
            rbtn_22.setChecked(false);


        }
    }
    public void myclick11 (View source){
        if (rbtn_11.isChecked()) {
            img.setImageResource(R.drawable.shi);
            rbtn_10.setChecked(false);
            rbtn_12.setChecked(false);
            rbtn_20.setChecked(false);
            rbtn_21.setChecked(false);
            rbtn_22.setChecked(false);
        }
    }
    public void myclick12 (View source){
        if (rbtn_12.isChecked()) {
        img.setImageResource(R.drawable.xiang);
            rbtn_11.setChecked(false);
            rbtn_10.setChecked(false);
            rbtn_20.setChecked(false);
            rbtn_21.setChecked(false);
            rbtn_22.setChecked(false);

        }

    }
    public void myclick20 (View source){
        if (rbtn_20.isChecked()) {
        img.setImageResource(R.drawable.xiu);
            rbtn_11.setChecked(false);
            rbtn_12.setChecked(false);
            rbtn_10.setChecked(false);
            rbtn_21.setChecked(false);
            rbtn_22.setChecked(false);
        }

    }
    public void myclick21 (View source){
        if (rbtn_21.isChecked()) {
        img.setImageResource(R.drawable.yu);
            rbtn_11.setChecked(false);
            rbtn_12.setChecked(false);
            rbtn_20.setChecked(false);
            rbtn_10.setChecked(false);
            rbtn_22.setChecked(false);
        }

    }
    public void myclick22 (View source){
        if (rbtn_22.isChecked()) {
        img.setImageResource(R.drawable.mu);
            rbtn_11.setChecked(false);
            rbtn_12.setChecked(false);
            rbtn_20.setChecked(false);
            rbtn_21.setChecked(false);
            rbtn_10.setChecked(false);
     }

    }

}

```

效果图:

相关文章
相关标签/搜索