4477011 ランダム
 HOME | DIARY | PROFILE 【フォローする】 【ログイン】

Bubble, bubble, toil and cuddle !!!

【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! --/--
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x
November 8, 2018
XML
カテゴリ:Linux
今日は早めで帰宅は18時半過ぎ。

とりあえず作ってみたAndroidのサイコロアプリに、プルダウンメニューを使って何面ダイスか選べるよう機能追加してみました。

プルダウンメニューを使用するには Spinner っちゅうのを使うらしいです。[Android] プルダウンで項目選択できるSpinnerをアプリに設定するのページを参考に作成しました。

Spinnerを使ってプルダウンメニューで何面ダイスか選択し、それに応じた最大値を使って乱数を発生させ、結果の数値をTextViewに表示しています。

プルダウンメニューで選ぶ
プルダウンメニューで選ぶ

12面ダイスを選んだところ
12面ダイス

っちゅうことで、4面、6面、8面、10面、12面、20面ダイスを選択してサイコロを振れるようになりました。:-) とりあえずアクティビティのソースだけ載せときます。
#楽天って<pre>要素使ったら改行が2つになるの?? orz

MainActivity.java

package com.example.pa_art.testapp3;

import android.graphics.Color;
import android.graphics.Typeface;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.Spinner;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {

private TextView dice_view;
private String dice_str = "";
private String dice_names[] = {"4面ダイス", "6面ダイス", "8面ダイス", "10面ダイス", "12面ダイス", "20面ダイス"};
private int dice_max[] = {4, 6, 8, 10, 12, 20};
private int dice_num = 1;

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

// setup button
Button button = findViewById(R.id.dice_button);
// set listener to button
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dice_view = findViewById(R.id.text_dice);
dice_str = "" + ((int)(Math.random() * (dice_max[dice_num])) + 1);
dice_view.setText(dice_str);
}
});

// setup spinner
final Spinner spinner = findViewById(R.id.dice_spinner);
// setup ArrayAdapter
ArrayAdapter<String> dice_adapter = new ArrayAdapter<>(
this,
android.R.layout.simple_spinner_item,
dice_names
);
// layout spinner ??
dice_adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
// set adapter to spinner
spinner.setAdapter(dice_adapter);
// default selection of spinner
spinner.setSelection(1);

// spinner change handler; set listener to spinner
spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
// if dropdown-list selected
@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
dice_num = spinner.getSelectedItemPosition();
}
// if no dropdown-list selected
@Override
public void onNothingSelected(AdapterView<?> parent) {
dice_num = 1;
}
});
}
}

--- 19:25 ---





お気に入りの記事を「いいね!」で応援しよう

Last updated  November 8, 2018 07:40:25 PM
コメント(0) | コメントを書く
[Linux] カテゴリの最新記事


■コメント

お名前
タイトル
メッセージ
画像認証
別の画像を表示
上の画像で表示されている数字を入力して下さい。


利用規約に同意してコメントを
※コメントに関するよくある質問は、こちらをご確認ください。


PR

Keyword Search

▼キーワード検索

Free Space

Category

Favorite Blog

まだ登録されていません

Comments

通りすがりの者です@ Re:LIFEBOOK U939/B に WANカードを載せた(01/21) 私のLIFEBOOKではnanoSIMを装着後に再起動…
aki@ Re:秋葉原に寄った(01/14) この様な書込大変失礼致します。日本も当…
BOOSAN@ Re:SPY x FAMILY CODE:White を観た(01/08) 私は明日、PERFECT DAYS観ます。ビム・ベ…
かいじゅう@ Re:dynabook T55 にインストールした PearOS Monterey が起動するようになった(06/15) 同じくpear osで画面が出なくて困ってまし…

Freepage List


© Rakuten Group, Inc.