Thứ Năm, 7 tháng 3, 2019

Khóa học lập trình Android - Android - Đa nhiệm

Cử chỉ đa chạm xảy ra khi nhiều hơn một ngón tay chạm vào màn hình cùng một lúc. Android cho phép chúng ta phát hiện những cử chỉ này.

Khóa học lập trình viên quốc tế
Khóa học lập trình viên quốc tế 

Hệ thống Khóa học lập trình Android tạo các sự kiện chạm sau đây bất cứ khi nào nhiều ngón tay chạm vào màn hình cùng một lúc.

Không.Sự kiện & mô tả
1ACTION_DOWN

Đối với con trỏ đầu tiên chạm vào màn hình. Điều này bắt đầu cử chỉ.
2ACTION_POINTER_DOWN
Đối với con trỏ thêm vào màn hình ngoài đầu tiên.
3ACTION_MISE

Một sự thay đổi đã xảy ra trong một cử chỉ báo chí.
4ACTION_POINTER_UP
Gửi khi một con trỏ không chính đi lên.
5ACTION_UP

Gửi khi con trỏ cuối cùng rời khỏi màn hình.
Vì vậy, để phát hiện bất kỳ sự kiện nào được đề cập ở trên, bạn cần ghi đè phương thức onTouchEvent () và kiểm tra các sự kiện này theo cách thủ công. Cú pháp của nó được đưa ra dưới đây
public boolean onTouchEvent(MotionEvent ev){
   final int actionPeformed = ev.getAction();

   switch(actionPeformed){
      case MotionEvent.ACTION_DOWN:{
         break;
      }
   
      case MotionEvent.ACTION_MOVE:{
         break;
      }
      return true;
   }
}
Trong những trường hợp này, bạn có thể thực hiện bất kỳ phép tính nào bạn muốn. Ví dụ: phóng to, thu nhỏ, v.v ... Để có tọa độ của trục X và Y, bạn có thể gọi phương thức getX () và getY () . Cú pháp của nó được đưa ra dưới đây
final float x = ev.getX();
final float y = ev.getY();
Ngoài các phương thức này, còn có các phương thức khác được cung cấp bởi lớp MotionEvent này để xử lý tốt hơn với cảm ứng đa điểm. Các phương pháp này được liệt kê dưới đây

Không.Phương pháp & mô tả
1getAction ()

Phương thức này trả về loại hành động đang được thực hiện
2getPressure ()
Phương pháp này trả về áp lực hiện tại của sự kiện này cho chỉ mục đầu tiên
3getRawX ()
Phương thức này trả về tọa độ X thô ban đầu của sự kiện này
4getRawY ()

Phương thức này trả về tọa độ Y thô ban đầu của sự kiện này
5lấy kích thước ()
Phương thức này trả về kích thước cho chỉ mục con trỏ đầu tiên
6getSource ()

Phương pháp này lấy nguồn của sự kiện
7getXPrecision ()
Phương pháp này trả về độ chính xác của tọa độ X được báo cáo
số 8getYPrecision ()

Phương pháp này trả về độ chính xác của tọa độ Y được báo cáo
Dưới đây là một ví dụ minh họa việc sử dụng Multitouch. Khóa học lập trình Android Nó tạo ra một ứng dụng cử chỉ Multitouch cơ bản cho phép bạn xem tọa độ khi multitouch được thực hiện.

Để thử nghiệm với ví dụ này, bạn cần chạy nó trên một thiết bị thực tế.

Các bướcSự miêu tả
1Bạn sẽ sử dụng studio android để tạo một ứng dụng Android theo gói com.example.sairamkrishna.myapplication.
2Sửa đổi tệp src / MainActivity.java để thêm mã cảm ứng đa điểm.
3Sửa đổi res / layout / Activity_main để thêm các thành phần XML tương ứng.
4Chạy ứng dụng và chọn một thiết bị Android đang chạy và cài đặt ứng dụng trên đó và xác minh kết quả.
Sau đây là nội dung của tệp hoạt động chính được sửa đổi src / MainActivity.java .
package com.example.sairamkrishna.myapplication;

import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends Activity {
   float xAxis = 0f;
   float yAxis = 0f;

   float lastXAxis = 0f;
   float lastYAxis = 0f;

   EditText ed1, ed2, ed3, ed4;
   TextView tv1;

   @Override
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);

      ed1 = (EditText) findViewById(R.id.editText);
      ed2 = (EditText) findViewById(R.id.editText2);
      ed3 = (EditText) findViewById(R.id.editText3);
      ed4 = (EditText) findViewById(R.id.editText4);

      tv1=(TextView)findViewById(R.id.textView2);
  
      tv1.setOnTouchListener(new View.OnTouchListener() {
         @Override
         public boolean onTouch(View v, MotionEvent event) {
            final int actionPeformed = event.getAction();

            switch(actionPeformed){
               case MotionEvent.ACTION_DOWN:{
                  final float x = event.getX();
                  final float y = event.getY();

                  lastXAxis = x;
                  lastYAxis = y;

                  ed1.setText(Float.toString(lastXAxis));
                  ed2.setText(Float.toString(lastYAxis));
                  break;
               }

               case MotionEvent.ACTION_MOVE:{
                  final float x = event.getX();
                  final float y = event.getY();

                  final float dx = x - lastXAxis;
                  final float dy = y - lastYAxis;

                  xAxis += dx;
                  yAxis += dy;

                  ed3.setText(Float.toString(xAxis));
                  ed4.setText(Float.toString(yAxis));
                  break;
               }
            }
            return true;
         }
      });
   }
}
Sau đây là nội dung được sửa đổi của xml res / layout / Activity_main.xml.

Trong mã dưới đây abc chỉ ra logo của tutspoint.com

Sau đây là nội dung của res / value / string.xml .
<resources>
   <string name="app_name">My Application</string>
</resources>
Sau đây là nội dung của tệp AndroidManifest.xml .
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.example.sairamkrishna.myapplication" >

   <application
      android:allowBackup="true"
      android:icon="@mipmap/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme" >
      
      <activity
         android:name=".MainActivity"
         android:label="@string/app_name" >
         
         <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
         </intent-filter>
         
      </activity>
   
   </application>
</manifest>
Hãy thử chạy ứng dụng của bạn. Tôi giả sử bạn đã kết nối thiết bị Khóa học lập trình Android Mobile thực tế của mình với máy tính.

Để chạy ứng dụng từ studio android, hãy mở một trong các tệp hoạt động của dự án của bạn và nhấp vào biểu tượng Run từ thanh công cụ. Trước khi bắt đầu ứng dụng của bạn, studio Android sẽ hiển thị cửa sổ sau để chọn tùy chọn nơi bạn muốn chạy ứng dụng Android của mình.

Chọn thiết bị di động của bạn làm tùy chọn và sau đó kiểm tra thiết bị di động của bạn sẽ hiển thị màn hình mặc định của bạn

Theo mặc định, bạn sẽ không thấy gì trong bất kỳ lĩnh vực nào. Bây giờ chỉ cần nhấn vào khu vực Touch here và xem một số dữ liệu trong các trường. Nó được hiển thị dưới đây

Bạn sẽ thấy dữ liệu trong trường Di chuyển là 0, vì chỉ một cử chỉ chạm duy nhất đã được thực hiện. Bây giờ chạm vào màn hình và bắt đầu kéo ngón tay của bạn. Bạn sẽ thấy sự thay đổi trong dữ liệu của trường di chuyển. Nó được hiển thị dưới đây.

Không có nhận xét nào:

Đăng nhận xét

Lập trình Android - RenderScript

Trong chương này, chúng ta sẽ tìm hiểu về Android RenderScript. Thông thường các ứng dụng trên Android được thiết kế để tiêu thụ tài nguyên ...