سورس بازی Free Flow در اندروید

شنبه 11 شهریور 1396

در این مقاله قصد داریم یک سورس بازی برای شما قرار دهیم که به این صورت است که کاربر می تواند رنگ های شبیه هم را به هم بچسباند این بازی بسیار جالب و کاربردی است و طرفداران خود را دارد.

سورس بازی Free Flow در اندروید

در لایه main آن یکی را انتخاب کردیم که مربوط به رتبه دادن است:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/rectangleshape"
    android:orientation="vertical"
    android:padding="@dimen/level_rect_thickness" >

    <TextView
        android:id="@+id/tvheading"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:layout_margin="@dimen/padding_dialog_buttons"
        android:background="@drawable/custom_rounrect_flow1"
        android:padding="@dimen/padding_dialog_buttons"
        android:text="@string/rate_dialog_title"
        android:textColor="@android:color/white"
        android:textSize="@dimen/heading_text_size" />

    <TextView
        android:id="@+id/tvcontent"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="@dimen/padding_dialog_buttons"
        android:text="@string/rate_message"
        android:textColor="@android:color/white"
        android:textSize="@dimen/content_text_size" />

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_margin="@dimen/padding_dialog_buttons"
        android:orientation="horizontal" >

        <Button
            android:id="@+id/brate"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_margin="@dimen/level_rect_thickness"
            android:layout_weight="1"
            android:background="@drawable/custom_rounrect_flow2"
            android:padding="@dimen/padding"
            android:text="@string/rate"
            android:textColor="@android:color/white"
            android:textSize="@dimen/content_text_size" />

        <Button
            android:id="@+id/blater"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_margin="@dimen/level_rect_thickness"
            android:layout_weight="1"
            android:background="@drawable/custom_rounrect_flow3"
            android:padding="@dimen/padding"
            android:text="@string/later"
            android:textColor="@android:color/white"
            android:textSize="@dimen/content_text_size" />

        <Button
            android:id="@+id/bnothanks"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_margin="@dimen/level_rect_thickness"
            android:layout_weight="1"
            android:background="@drawable/custom_rounrect_flow4"
            android:padding="@dimen/padding"
            android:text="@string/no_thanks"
            android:textColor="@android:color/white"
            android:textSize="@dimen/content_text_size" />
    </LinearLayout>

</LinearLayout>

در کلاس src باید قطعه کد زیر را قرار دهید:

این کلاسی که در اینجا قرار دارد مربوط به تایمر است:

package com.creativedroids.link;

import java.util.Timer;
import java.util.TimerTask;

import android.app.Activity;
import android.view.View;
import android.widget.RelativeLayout.LayoutParams;

public class TimerClass extends TimerTask {

	private Activity activity;
	private int fromX;
	private int fromY;
	private int steps;
	private View view;
	private int toX;
	private int toY;

	public TimerClass(Timer timer, Activity act, View view, int fromX,
			int fromY, int toX, int toY) {
		activity = act;
		this.view = view;
		this.fromX = fromX;
		this.fromY = fromY;
		this.toX = toX;
		this.toY = toY;
		steps = 0;
	}

	public void run() {
		if (steps < 10) {
			++steps;
			activity.runOnUiThread(new Runnable() {
				public void run() {
					LayoutParams params = (LayoutParams) view.getLayoutParams();
					params.leftMargin = (toX - fromX) * steps / 10 + fromX;
					params.topMargin = (toY - fromY) * steps / 10 + fromY;
					view.setLayoutParams(params);
					view.invalidate();
				}
			});
		} else {
			cancel();
		}
	}
}

خروجی بازی به صورت زیر است:

فایل های ضمیمه

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان

کاربرانی که از نویسنده این مقاله تشکر کرده اند

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید