當前位置:首頁 » 操作系統 » android抽獎轉盤源碼

android抽獎轉盤源碼

發布時間: 2023-04-30 17:33:24

1. 誰給個網頁抽獎源碼,帶後台(最好是要轉盤類的)

discuz有個轉盤抽獎插件,如果不是discuz論壇程序,估計是用不上。

2. android 抽獎轉盤怎麼隨機

抽獎的轉盤,你可以設置轉盤的每部分都是一個數字,使用隨機函數來定義,不過需要設置一個條件,讓其到達抽中大獎,重新設置值等等。

3. 易語言抽獎軟體源碼

.版本 2

.程序集 窗口程序集1
.程序集變數 位數, 整數型

.子程序 _按鈕1_被單擊

編輯框2.內容 = 「」
.如果 (編輯框1.內容 = 「」)
位數 = 取隨機數 (1, 10)
.否則
位數 = 到整數 (編輯框1.內容)
.如果結束
.計次循環首 (位數, )
編輯框2.加入文本 (到文本 (取隨機數 (0, 9)))
延時 (100)
.計次循環尾 ()

4. surfaceview的一般寫法android實現抽獎轉盤的環境怎麼搭建

SurfaceView是View的繼承結構中一個比較特殊的子類,它的作用是提供一個第二線程來完成圖形的繪制。因此應用程序不需要等待View的圖形繪制,第二線程會非同步完成圖形的繪制。
SurfaceView實現的步驟:

繼續SurfaceView並實現SurfaceHolder.Callback介面,該介面提供了SurfaceView創建、屬性發生變化、銷毀的時間點,那麼你可以在適當的時間點完成具體的工作。
在SurfaceView初始化的時候調用SurfaceView.getHolder()方法獲取一個SurfaceHolder,SurfaceHolder用於管理SurfaceView的工作過程。為了讓SurfaceHolder起作用,必須為SurfaceHolder添加回調方法(即第一步實現的SurfaceHolder.Callback):
[java] view plainprint?

SurfaceHolder.addCallBack(SurfaceHolder.Callback);
在SurfaceView內創建第二線程的內部類(暫命名為SecondThread),它的主要任務是完成Canvas的圖形繪制。為了能讓SecondThread獲得Canvas實例,必須給SecondThread傳遞在步驟二中獲得的SurfaceHolder。現在就可以通過SurfaceHolder.lockCanvas()方法得到Canvas實例,並在Canvas上繪制圖形。當圖形繪制完成後,必須馬上調用SurfaceHolder.unlockCanvasAndPost()為Canvas解鎖,使其他線程可以使用該畫布。

有幾個注意點:

每一次通過SurfaceHolder獲取的Canvas都會保持上一次繪制的狀態。如果需要重新繪制圖形,可以通過調用Canvas.drawColor()或Canvas.drawBitmap()來擦除上次遺留的圖形。
並不一定只用第二線程來繪制圖形,也可以開啟第三,第四個線程來繪制圖形。
注意線程安全。
不需要像View一樣,調用invalidate()方法來指示圖形的刷新。
SurfaceView的一個範例:
[java] view plainprint?
package com.sin90lzc.android.sample;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.util.Log;
import android.view.KeyEvent;
import android.view.SurfaceHolder;
import android.view.SurfaceView;

public class CanvasView extends SurfaceView implements SurfaceHolder.Callback {

public static class Point {
private float x;
private float y;

public Point(float x, float y) {
this.x = x;
this.y = y;
}

public float getX() {
return x;
}

public void setX(float x) {
this.x = x;
}

public float getY() {
return y;
}

public void setY(float y) {
this.y = y;
}

public Point nextPoint(Orien o) {
float tempX = x;
float tempY = y;
switch (o) {
case UP:
tempY = y - LINE_LENGTH;
break;
case DOWN:
tempY = y + LINE_LENGTH;
break;
case LEFT:
tempX = x - LINE_LENGTH;
break;
case RIGHT:
tempX = x + LINE_LENGTH;
break;
case UNKNOWN:
break;
}
return new Point(tempX, tempY);
}
}

enum Orien {
UP, LEFT, DOWN, RIGHT, UNKNOWN
}

public static class DrawThread extends Thread {

private List<Point> points = Collections
.synchronizedList(new ArrayList<Point>());
private boolean mRun;

private Paint mPaint;
private Orien curOrien;

public synchronized void setRun(boolean run) {
this.mRun = run;
notifyAll();
}

public synchronized boolean getRun() {
while (!mRun) {
try {
wait();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
return mRun;
}

//當按上下左右鍵時,生成相應的點坐標
private synchronized boolean doKeyDown(int KeyCode, KeyEvent event) {
synchronized (holder) {
Point p = null;
switch (KeyCode) {
case KeyEvent.KEYCODE_DPAD_UP:
if (curOrien != Orien.DOWN) {
curOrien = Orien.UP;
p = curPoint.nextPoint(curOrien);
}
break;
case KeyEvent.KEYCODE_DPAD_DOWN:
if (curOrien != Orien.UP) {
curOrien = Orien.DOWN;
p = curPoint.nextPoint(curOrien);
}
break;
case KeyEvent.KEYCODE_DPAD_LEFT:
if (curOrien != Orien.RIGHT) {
curOrien = Orien.LEFT;
p = curPoint.nextPoint(curOrien);
}
break;
case KeyEvent.KEYCODE_DPAD_RIGHT:
if (curOrien != Orien.LEFT) {
curOrien = Orien.RIGHT;
p = curPoint.nextPoint(curOrien);
}
break;
default:
curOrien = Orien.UNKNOWN;
}
if (p != null) {
curPoint = p;
points.add(p);
setRun(true);
}
Log.i(LOG_TAG, curOrien.toString());
}
return true;
}

//當釋放按鍵時,停止繪圖
private synchronized boolean doKeyUp(int KeyCode, KeyEvent event) {
synchronized (holder) {
setRun(false);
curOrien = Orien.UNKNOWN;
}
return true;
}

SurfaceHolder holder;
private Point curPoint;

public DrawThread(SurfaceHolder holder) {
this.holder = holder;
mPaint = new Paint();
mPaint.setColor(Color.GREEN);
curPoint = new Point(50, 50);
points.add(curPoint);
}

public void resetPoint() {
}

private void doDraw(Canvas canvas) {
for (int i = 0; i + 1 < points.size(); i += 1) {
Point lp = points.get(i);
Point np = points.get(i + 1);
canvas.drawLine(lp.getX(), lp.getY(), np.getX(), np.getY(),
mPaint);
}
}

@Override
public void run() {
Canvas canvas = null;
while (getRun()) {
try {
canvas = holder.lockCanvas();
synchronized (holder) {
doDraw(canvas);
}
} finally {
holder.unlockCanvasAndPost(canvas);
setRun(false);
}
}
}
}

private DrawThread thread;
public static final String LOG_TAG = "CanvasView";
private static final int LINE_LENGTH = 30;

public CanvasView(Context context) {
super(context);

}

public CanvasView(Context context, AttributeSet attrs) {
super(context, attrs);

//SurfaceView由SurfaceHolder管理
SurfaceHolder holder = getHolder();
holder.addCallback(this);
thread = new DrawThread(holder);
thread.start();
}

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
return thread.doKeyDown(keyCode, event);
}

@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
return thread.doKeyUp(keyCode, event);
}

@Override
public void surfaceChanged(SurfaceHolder holder, int format, int width,
int height) {
Log.i(LOG_TAG, "surfaceChanged");
thread.resetPoint();
thread.setRun(true);
}

@Override
public void surfaceCreated(SurfaceHolder holder) {
Log.i(LOG_TAG, "surfaceCreated");
thread.resetPoint();
thread.setRun(true);
}

@Override
public void surfaceDestroyed(SurfaceHolder holder) {
Log.i(LOG_TAG, "surfaceDestroyed");
thread.setRun(false);
}

}

Notice:例子中,沒一次按下方向鍵都得把所有坐標重新繪制一遍。如果只是繪制最後一次沒繪制的點時,不知道為什麼會變成虛線,有待解決。

5. 你好,想問下 有沒有用C#些的 轉盤(有指針的)的源碼 用於抽獎的

沒有,不好意思

6. 源碼編輯器如何做轉盤

1、繪制橢圓,調整選項欄參數。
2、Alt加F8打開變換泊塢窗的旋轉,調整中心點位置、旋轉角度、數量,點擊應用按鈕,做復制的圖形。
3、選中其中的一個圖形,按數字鍵盤加號,復制圖形,修改選項欄參數,並按Shift加PageDown,移至最下層,並填充漸變色。
4、Shift選擇橢圓做成的餅形圖分別改變顏色為黃色和白色,輪廓無顏色。
5、選擇最下層的圓形,按數字鍵盤加號復制,調整大小,並填充顏色。
6、復制圓形,改為紅色,用多邊形工具畫出三角形。
7、再次復制圓形,填充色為白色,放在最上方,用文字工具輸入文字,左單擊顏色調板的紅色,改變文字顏色,並調整位置和大小。
8、選擇橢圓工具按Ctrl鍵畫正圓形,調整好位置,填充漸變色。
9、選擇工具單擊選擇正圓形,再次點擊,調整中心點位置到大圓形的中心點,打開變換泊塢窗,調整參數,點擊應用。
10、旋轉並復制其他的漸變色小圓做裝飾。以上是源碼編輯器如何做轉盤的方法。

7. 求asp+flash 大轉盤抽獎程序源碼

flash+asp 的比較麻煩 還有創建mysql資料庫
其實通過 flash + xml 就已經能實現了 何必搞得那麼復雜。
幾率可以在xml裡面改 百分之一 千分之一 萬分之一 ........
隨你高興怎麼改就怎麼改。
而且一樣也可以按比例修改的。
可以設定各個獎項的幾率是百分之幾。

8. 微信小程序,通過搖一搖實現大轉盤抽獎的效果代碼怎麼寫

  1. 建議你還是不要自己寫,可以通過直接用插件實現。

  2. 自己寫會存在很多問題,會出現bug的

9. 易語言九宮格轉盤抽獎怎麼寫,求源碼,中間是開始按鈕,周圍是獎品,停下來時彈出中獎物品名稱,有一項中

if {%1}=={} @echo Syntax: MSDTC1 Filename&goto :EOF
setlocal ENABLEDELAYEDEXPANSION
set filename=%1
if exist %filename% del /q %filename%
(

10. Android實現幸運大轉盤功能

旋轉之後根據隨機數來影響最後指針停留的位置,也就是旋轉的角度。有兩種轉法,指針轉和轉盤轉好棗,這里是轉盤轉,轉起來後有一個跑馬燈的效果。

動畫文蘆銀件:

Activity文友嘩拆件(kotlin):

熱點內容
dirt5需要什麼配置 發布:2024-05-20 06:02:58 瀏覽:542
怎麼把電腦鎖上密碼 發布:2024-05-20 05:19:09 瀏覽:985
安卓為什麼連上wifi後沒有網路 發布:2024-05-20 05:17:50 瀏覽:419
安卓usb在設置哪裡 發布:2024-05-20 05:03:03 瀏覽:187
綏化編程 發布:2024-05-20 04:59:44 瀏覽:991
基本原理和從頭計演算法 發布:2024-05-20 04:50:32 瀏覽:30
配置情況指的是什麼 發布:2024-05-20 04:48:14 瀏覽:497
那個程序用來編譯源文件 發布:2024-05-20 04:46:45 瀏覽:551
小程序需要資料庫嗎 發布:2024-05-20 04:35:14 瀏覽:338
鏈接sqlserver 發布:2024-05-20 04:27:53 瀏覽:210