Advertisement
Guest User

Untitled

a guest
Dec 10th, 2019
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.64 KB | None | 0 0
  1. package com.example.mulittouch;
  2.  
  3. import android.os.AsyncTask;
  4. import android.os.Bundle;
  5. import android.view.MotionEvent;
  6. import android.view.View;
  7. import android.widget.RelativeLayout;
  8.  
  9. import androidx.appcompat.app.AppCompatActivity;
  10.  
  11. import java.io.IOException;
  12. import java.io.ObjectOutputStream;
  13. import java.io.PrintWriter;
  14. import java.net.Socket;
  15.  
  16. public class MainActivity extends AppCompatActivity {
  17.  
  18.  
  19.     private int initX, initY, disX, disY;
  20.     @Override
  21.     protected void onCreate(Bundle savedInstanceState) {
  22.         super.onCreate(savedInstanceState);
  23.         setContentView(R.layout.activity_main);
  24.  
  25.         RelativeLayout mylayaut = (RelativeLayout)findViewById(R.id.layoutxml);
  26.  
  27.  
  28.         mylayaut.setOnTouchListener(new RelativeLayout.OnTouchListener(){
  29.             public boolean onTouch(View v, MotionEvent event) {
  30.                 handleTouch(event);
  31.                 return true;
  32.             }
  33.         }
  34.         );
  35.  
  36.  
  37.     }
  38. void sendMessage(String message1,String message2)
  39. {
  40.     //new BackgroundTask2().execute(String.valueOf(message));
  41.      BackgroundTask2 b2 = new BackgroundTask2();
  42.      b2.execute(String.valueOf(message1),String.valueOf(message2));
  43. }
  44.     void handleTouch(MotionEvent event)
  45.     {
  46.       //  TextView text1  =(TextView)findViewById(R.id.textView1);
  47.  
  48.         //wersja obiektowa
  49.         switch(event.getAction() & MotionEvent.ACTION_MASK) {
  50.             case MotionEvent.ACTION_DOWN:
  51.                 initX = (int) event.getX();
  52.                 initY = (int) event.getY();
  53.                 break;
  54.             case MotionEvent.ACTION_MOVE:
  55.                 disX = (int) event.getX()- initX; //Mouse movement in x direction
  56.                 disY = (int) event.getY()- initY; //Mouse movement in y direction
  57.                                 /*set init to new position so that continuous mouse movement
  58.                                 is captured*/
  59.                 initX = (int) event.getX();
  60.                 initY = (int) event.getY();
  61.                 if (disX != 0 || disY != 0)
  62.                 {
  63.                     sendMessage(String.valueOf(disX),String.valueOf(disY));
  64.                 }
  65.  
  66.  
  67.         }
  68.  
  69.  
  70.  
  71.  
  72.         /*
  73.  
  74.  
  75.         TextView text2  =(TextView)findViewById(R.id.textView2);
  76.  
  77.         int pointerCount = m.getPointerCount();
  78.  
  79.         for(int i=0; i<pointerCount;i++)
  80.         {
  81.             int x = (int) m.getX(i);
  82.             int y = (int) m.getY(i);
  83.             int id = m.getPointerId(i);
  84.  
  85.             String touchStatus = " ID " + id + " X: " + x + " Y "+ y;
  86.             if(id==0)
  87.             {
  88.                 text1.setText(touchStatus);
  89.                 String message = text1.getText().toString();
  90.                 BackgroundTask b1 = new BackgroundTask();
  91.                 b1.execute(message);
  92.             }
  93.             else
  94.             {
  95.                 text2.setText(touchStatus);
  96.             }
  97.         }
  98.  
  99.          */
  100.     }
  101.  
  102.  
  103.     class BackgroundTask extends AsyncTask<Integer,Void,Void>
  104.     {
  105.         Socket s;
  106.         PrintWriter writer;
  107.         @Override
  108.         protected Void doInBackground(Integer... voids) {
  109.             try
  110.             {
  111.                 int message = voids[0];
  112.                 s = new Socket("192.168.100.33", 6000);
  113.                 writer = new PrintWriter(s.getOutputStream());
  114.                 writer.write(message);
  115.                 writer.flush();
  116.                 writer.close();
  117.  
  118.  
  119.             }catch(IOException e)
  120.             {
  121.                 e.printStackTrace();
  122.             }
  123.  
  124.             return null;
  125.         }
  126.     }
  127.  
  128.  
  129.  
  130.  
  131.     class BackgroundTask2 extends AsyncTask<String,Void,Void>
  132.     {
  133.         Socket s;
  134.         ObjectOutputStream objectOutputStream;
  135.  
  136.         @Override
  137.         protected Void doInBackground(String... params) {
  138.             try
  139.             {
  140.                 String messageString1 = params[0];
  141.                 String messageString2 = params[1];
  142.                 int messageInt1;
  143.                 int messageInt2;
  144.                 messageInt1 = Integer.parseInt(messageString1);
  145.                 messageInt2 = Integer.parseInt(messageString2);
  146.                  s = new Socket("192.168.100.33", 6000);
  147.                // s = new Socket("10.5.5.20", 6000);
  148.                 objectOutputStream = new ObjectOutputStream(s.getOutputStream());
  149.  
  150.                 objectOutputStream.writeObject(messageInt1);
  151.                 objectOutputStream.writeObject(messageInt2);
  152.  
  153.                 objectOutputStream.flush();
  154.                 objectOutputStream.close();
  155.             }catch(IOException e)
  156.             {
  157.                 e.printStackTrace();
  158.             }
  159.  
  160.             return null;
  161.         }
  162.     }
  163.  
  164.  
  165.  
  166.  
  167. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement