This example shows how Control and animate Buttons in android.
Algorithm:
1.) Create a new project by File-> New -> Android Project name it RotatingButtonExample.
2.) Write following into main.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/container"
android:splitMotionEvents="true"
>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dip"
android:splitMotionEvents="true"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="5dip"
android:paddingRight="5dip"
android:textStyle="bold"
android:text="TX"
/>
<SeekBar
android:orientation="horizontal"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/translationX"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="15dip"
android:paddingRight="5dip"
android:textStyle="bold"
android:text="TY"
/>
<SeekBar
android:orientation="horizontal"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/translationY"
/>
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dip"
android:splitMotionEvents="true"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="5dip"
android:paddingRight="5dip"
android:textStyle="bold"
android:text="SX"
/>
<SeekBar
android:orientation="horizontal"
android:layout_weight="1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/scaleX"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="15dip"
android:paddingRight="5dip"
android:textStyle="bold"
android:text="SY"
/>
<SeekBar
android:orientation="horizontal"
android:layout_weight="1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/scaleY"
/>
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dip"
android:splitMotionEvents="true"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="5dip"
android:paddingRight="5dip"
android:textStyle="bold"
android:text="X"
/>
<SeekBar
android:orientation="horizontal"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/rotationX"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="15dip"
android:paddingRight="5dip"
android:textStyle="bold"
android:text="Y"
/>
<SeekBar
android:orientation="horizontal"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/rotationY"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="15dip"
android:paddingRight="5dip"
android:textStyle="bold"
android:text="Z"
/>
<SeekBar
android:orientation="horizontal"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/rotationZ"
/>
</LinearLayout>
<Button
android:layout_width="200dip"
android:layout_height="150dip"
android:layout_marginLeft="50dip"
android:layout_marginTop="50dip"
android:text="Click Me"
android:id="@+id/rotatingButton"
/>
</LinearLayout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/container"
android:splitMotionEvents="true"
>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dip"
android:splitMotionEvents="true"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="5dip"
android:paddingRight="5dip"
android:textStyle="bold"
android:text="TX"
/>
<SeekBar
android:orientation="horizontal"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/translationX"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="15dip"
android:paddingRight="5dip"
android:textStyle="bold"
android:text="TY"
/>
<SeekBar
android:orientation="horizontal"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/translationY"
/>
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dip"
android:splitMotionEvents="true"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="5dip"
android:paddingRight="5dip"
android:textStyle="bold"
android:text="SX"
/>
<SeekBar
android:orientation="horizontal"
android:layout_weight="1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/scaleX"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="15dip"
android:paddingRight="5dip"
android:textStyle="bold"
android:text="SY"
/>
<SeekBar
android:orientation="horizontal"
android:layout_weight="1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/scaleY"
/>
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="20dip"
android:splitMotionEvents="true"
>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="5dip"
android:paddingRight="5dip"
android:textStyle="bold"
android:text="X"
/>
<SeekBar
android:orientation="horizontal"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/rotationX"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="15dip"
android:paddingRight="5dip"
android:textStyle="bold"
android:text="Y"
/>
<SeekBar
android:orientation="horizontal"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/rotationY"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="15dip"
android:paddingRight="5dip"
android:textStyle="bold"
android:text="Z"
/>
<SeekBar
android:orientation="horizontal"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/rotationZ"
/>
</LinearLayout>
<Button
android:layout_width="200dip"
android:layout_height="150dip"
android:layout_marginLeft="50dip"
android:layout_marginTop="50dip"
android:text="Click Me"
android:id="@+id/rotatingButton"
/>
</LinearLayout>
3.) Run for output.
Steps:
1.) Create a project named RotatingButtonExample and set the information as stated in the image.
Build Target: Android 4.0
Application Name: RotatingButtonExample
Package Name: com. example. RotatingButtonExample
Activity Name: RotatingButtonExample
Min SDK Version: 14
Application Name: RotatingButtonExample
Package Name: com. example. RotatingButtonExample
Activity Name: RotatingButtonExample
Min SDK Version: 14
2.) Open RotatingButtonExample.java file and write following code there:
package com.example.RotatingButtonsExample;
import android.app.Activity;
import android.os.Bundle;
import android.widget.Button;
import android.widget.SeekBar;
import android.os.Bundle;
import android.widget.Button;
import android.widget.SeekBar;
public class RotatingButtonsExample extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final Button rotatingButton = (Button) findViewById(R.id.rotatingButton);
SeekBar seekBar;
seekBar = (SeekBar) findViewById(R.id.translationX);
seekBar.setMax(400);
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){
public void onStopTrackingTouch(SeekBar seekBar) {
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
final Button rotatingButton = (Button) findViewById(R.id.rotatingButton);
SeekBar seekBar;
seekBar = (SeekBar) findViewById(R.id.translationX);
seekBar.setMax(400);
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){
public void onStopTrackingTouch(SeekBar seekBar) {
}
public void onStartTrackingTouch(SeekBar seekBar) {
}
}
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
rotatingButton.setTranslationX((float)progress);
}
});
seekBar = (SeekBar) findViewById(R.id.translationY);
seekBar.setMax(800);
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){
boolean fromUser) {
rotatingButton.setTranslationX((float)progress);
}
});
seekBar = (SeekBar) findViewById(R.id.translationY);
seekBar.setMax(800);
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){
public void onStopTrackingTouch(SeekBar seekBar) {
}
}
public void onStartTrackingTouch(SeekBar seekBar) {
}
}
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
rotatingButton.setTranslationY((float)progress);
}
});
seekBar = (SeekBar) findViewById(R.id.scaleX);
seekBar.setMax(50);
seekBar.setProgress(10);
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){
boolean fromUser) {
rotatingButton.setTranslationY((float)progress);
}
});
seekBar = (SeekBar) findViewById(R.id.scaleX);
seekBar.setMax(50);
seekBar.setProgress(10);
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){
public void onStopTrackingTouch(SeekBar seekBar) {
}
}
public void onStartTrackingTouch(SeekBar seekBar) {
}
}
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
rotatingButton.setScaleX((float)progress/10f);
}
});
seekBar = (SeekBar) findViewById(R.id.scaleY);
seekBar.setMax(50);
seekBar.setProgress(10);
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){
boolean fromUser) {
rotatingButton.setScaleX((float)progress/10f);
}
});
seekBar = (SeekBar) findViewById(R.id.scaleY);
seekBar.setMax(50);
seekBar.setProgress(10);
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){
public void onStopTrackingTouch(SeekBar seekBar) {
}
}
public void onStartTrackingTouch(SeekBar seekBar) {
}
}
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
rotatingButton.setScaleY((float)progress/10f);
}
});
seekBar = (SeekBar) findViewById(R.id.rotationX);
seekBar.setMax(360);
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){
boolean fromUser) {
rotatingButton.setScaleY((float)progress/10f);
}
});
seekBar = (SeekBar) findViewById(R.id.rotationX);
seekBar.setMax(360);
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){
public void onStopTrackingTouch(SeekBar seekBar) {
}
}
public void onStartTrackingTouch(SeekBar seekBar) {
}
}
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
rotatingButton.setRotationX((float)progress);
}
});
seekBar = (SeekBar) findViewById(R.id.rotationY);
seekBar.setMax(360);
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){
boolean fromUser) {
rotatingButton.setRotationX((float)progress);
}
});
seekBar = (SeekBar) findViewById(R.id.rotationY);
seekBar.setMax(360);
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){
public void onStopTrackingTouch(SeekBar seekBar) {
}
}
public void onStartTrackingTouch(SeekBar seekBar) {
}
}
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
rotatingButton.setRotationY((float)progress);
}
});
seekBar = (SeekBar) findViewById(R.id.rotationZ);
seekBar.setMax(360);
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){
boolean fromUser) {
rotatingButton.setRotationY((float)progress);
}
});
seekBar = (SeekBar) findViewById(R.id.rotationZ);
seekBar.setMax(360);
seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener(){
public void onStopTrackingTouch(SeekBar seekBar) {
}
}
public void onStartTrackingTouch(SeekBar seekBar) {
}
}
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
rotatingButton.setRotation((float)progress);
}
});
}
}
boolean fromUser) {
rotatingButton.setRotation((float)progress);
}
});
}
}
3.) Compile and build the project.
Output
No comments:
Post a Comment