Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
ВладимирС
0 / 0 / 0
Регистрация: 18.12.2014
Сообщений: 64
#1

Сапер в Android Studio - Android

27.04.2016, 19:40. Просмотров 515. Ответов 17
Метки нет (Все метки)

Всем привет, я пишу на Android Studio 2 день и толком его не знаю пока, я пишу на нем игру "сапер"
Идея заключается в том что будет создано 9 кнопок 3х3 и игрок будет на свою удачу нажимать на эти кнопки,
в какой то одной из кнопок будет располагаться сам проигрышь (пока не решил что именно за проигрышь будет, то либо какая то картинка, либо просто надпись где будет просто написано типа "ты проиграл"), проблема заключается в том, что нужен алгоритм где будет выбираться рандомом одна из кнопок, и привязки этой одной из кнопок соответсвующий проигрышь, если у кого нибудь есть какие либо идеи, либо есть какие либо видеоуроки на данную тему, дайте знать


поскриптум: извените если я попал не в ту тему
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.04.2016, 19:40     Сапер в Android Studio
Посмотрите здесь:

Android studio настройка Android
Ошибка Android Studio Android
Android Установка Android Studio
Android Javah в android studio 1.0
Таблица Android Studio Android
Android Studio и HTML Android
Android Кнопка Android studio
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CoolMind
417 / 400 / 65
Регистрация: 06.10.2012
Сообщений: 1,713
29.04.2016, 10:32     Сапер в Android Studio #2
ВладимирС, привет.
Если идти по простому варианту (без canvas), то просто сделай разметку в виде таблицы, например, TableLayout. Задай количество строк и столбцов. Каждая ячейка будет состоять, например, из ImageView или TextView (если отображать ничего не требуется).
Научись адресоваться к ячейкам. Также сделай обработку нажатий (onClickListener).
DarkVortex
102 / 68 / 18
Регистрация: 07.07.2014
Сообщений: 239
29.04.2016, 10:42     Сапер в Android Studio #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Было бы неплохо узнать чего уже смогли добиться вы сами. Не совсем ясно, чем вам помочь, толи научить рандомом пользоваться, толи кнопки создавать.
Если уж совсем для начала, как сказал CoolMind, просто сделайте форму с 9 кнопками, назовите их соответсовенно от 1 до 9. При старте игры, генерируете номер проигрышной кнопки, например так:
Java
1
2
Random rand = new Random();
int  n = rand.nextInt(9) + 1;
в n попадет число от 1 до 9. А в обработчике проверяйте id кнопки и этого числа, если совпало, значит проиграли.
ВладимирС
0 / 0 / 0
Регистрация: 18.12.2014
Сообщений: 64
06.05.2016, 13:30  [ТС]     Сапер в Android Studio #4
Всем здравствуйте, извените что меня так долго тут небыло, короче я создал 9 кнопок, и написал как будет происходить рандом, но я как то в нем не уверен, вот сам код
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package com.example.saper;
 
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.Button;
 
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
 
public class MainActivity extends AppCompatActivity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
    public static void hjgbjhhj(){
        List<Button> buttons = new ArrayList<>();
        Button but = buttons.get(new Random().nextInt(buttons.size()));
}
}
подскажите, может я что то тут упустил
DarkVortex
102 / 68 / 18
Регистрация: 07.07.2014
Сообщений: 239
06.05.2016, 13:56     Сапер в Android Studio #5
Цитата Сообщение от ВладимирС Посмотреть сообщение
подскажите, может я что то тут упустил
Мне кажется вы тут упустили все.
ВладимирС
0 / 0 / 0
Регистрация: 18.12.2014
Сообщений: 64
06.05.2016, 15:30  [ТС]     Сапер в Android Studio #6
Цитата Сообщение от DarkVortex Посмотреть сообщение
Мне кажется вы тут упустили все.
что именно я упустил?

Добавлено через 1 минуту
мне это нужно для лабораторной работы, ну и так для себя, разобраться как тут все работает, сильно углубляться в работу я не хочу

Добавлено через 1 час 22 минуты
подскажите пожалуйста, может где то есть примеры
CoolMind
417 / 400 / 65
Регистрация: 06.10.2012
Сообщений: 1,713
06.05.2016, 17:53     Сапер в Android Studio #7
Сообщение было отмечено автором темы, экспертом или модератором как ответ
ВладимирС, ну я даже не знаю, вам с нуля нужно всё попробовать.
Для начала изучите обработку нажатий (onClickListener) в Android.
ВладимирС
0 / 0 / 0
Регистрация: 18.12.2014
Сообщений: 64
06.05.2016, 22:18  [ТС]     Сапер в Android Studio #8
Цитата Сообщение от CoolMind Посмотреть сообщение
Для начала изучите обработку нажатий (onClickListener) в Android.
Во блин, об этом я даже не подумал, а вы не знаете, где есть примеры таких же работ, просто на примере как то более наглядно будет
DarkVortex
102 / 68 / 18
Регистрация: 07.07.2014
Сообщений: 239
06.05.2016, 22:32     Сапер в Android Studio #9
ВладимирС, http://startandroid.ru/ru/uroki/vse-uroki-spiskom.html вот сначала прям начинайте. Как изучите до 10 урока, обдумайте все, попробуйте применить полученные знания к своему проекту. И если возникнут сложностьи пишите суда.
ВладимирС
0 / 0 / 0
Регистрация: 18.12.2014
Сообщений: 64
07.05.2016, 05:16  [ТС]     Сапер в Android Studio #10
Цитата Сообщение от DarkVortex Посмотреть сообщение
И если возникнут сложностьи пишите суда.
спасибо огромное
ВладимирС
0 / 0 / 0
Регистрация: 18.12.2014
Сообщений: 64
11.05.2016, 15:33  [ТС]     Сапер в Android Studio #11
Цитата Сообщение от ВладимирС Посмотреть сообщение
И если возникнут сложности пишите суда.
Здравствуйте еще раз, я прочитал как вы и советовали до 10 уровня, я пришел к такому выводу ну и пришел к такому решению, я создал 9 кнопок, и для каждой кнопки я буду прописывать ее нажатие, при нажатии кнопки будет выводиться определенный текст, мне нужно что бы этот текст рандомно прикреплялся к каждой кнопке, и как реализовать, что бы на определенной кнопке вывелся текст и игра завершилась? и еще такой вопрос как сделать что бы на кнопку можно было нажимать только 1 раз?
ВладимирС
0 / 0 / 0
Регистрация: 18.12.2014
Сообщений: 64
11.05.2016, 15:39  [ТС]     Сапер в Android Studio #12
никто не в курсе с чем связанна такая ошибка? она выскакивает при запуске эмуляции???
Миниатюры
Сапер в Android Studio   Сапер в Android Studio  
CoolMind
417 / 400 / 65
Регистрация: 06.10.2012
Сообщений: 1,713
11.05.2016, 18:48     Сапер в Android Studio #13
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Добрый вечер!
Цитата Сообщение от ВладимирС Посмотреть сообщение
с чем связанна такая ошибка?
По-видимому, не настроена виртуализация. У вас какой процессор? Можете попробовать в командной строке от администратора запустить команду "bcdedit ...", которую видите выше, и перезагрузиться.
Цитата Сообщение от ВладимирС Посмотреть сообщение
для каждой кнопки я буду прописывать ее нажатие
Немного жутковато. Проще сделать, например, один onClick, в котором делать проверку id нажатой кнопки.
Цитата Сообщение от ВладимирС Посмотреть сообщение
как сделать что бы на кнопку можно было нажимать только 1 раз?
После нажатия установить её свойства clickable и enabled в false (button.setEnabled(false).
ВладимирС
0 / 0 / 0
Регистрация: 18.12.2014
Сообщений: 64
11.05.2016, 21:23  [ТС]     Сапер в Android Studio #14
Цитата Сообщение от CoolMind Посмотреть сообщение
После нажатия установить её свойства clickable и enabled в false
аха щас попробую

Добавлено через 2 минуты
а как сделать что бы все 9 значений как бы так скажем, тоесть надпись при нажатии кнопки распределялись рандомно на разные кнопки?
CoolMind
417 / 400 / 65
Регистрация: 06.10.2012
Сообщений: 1,713
12.05.2016, 09:34     Сапер в Android Studio #15
Цитата Сообщение от ВладимирС Посмотреть сообщение
надпись при нажатии кнопки распределялись рандомно на разные кнопки?
Честно говоря, из предыдущих вопросов не понял, что нужно сделать. Разве при нажатии кнопки кто-то меняет названия других кнопок? Если так, то у батонов есть свойство text (они наследуются от TextView). Поэтому можно написать что-то типа btn.setText("Прувет, я Вилли! Вилли Баранкин");
Если вопрос про случайное распределение, то тут помогут библиотеки Math или Random. Во второй есть, кажется, метод nextInt(), вот с ним и поработайте. Наверное, проще сделать так: взять коллекцию (List или Set) и запихать туда надписи. На каждом шаге (9 шагов) брать случайное значение из диапазона (длины текущего списка, вначале - 9, потом - 8 и т.д.). По данному индексу брать из списка значение. Затем удалить это значение из списка.
ВладимирС
0 / 0 / 0
Регистрация: 18.12.2014
Сообщений: 64
17.05.2016, 17:43  [ТС]     Сапер в Android Studio #16
Цитата Сообщение от CoolMind Посмотреть сообщение
На каждом шаге (9 шагов) брать случайное значение из диапазона (длины текущего списка, вначале - 9, потом - 8 и т.д.). По данному индексу брать из списка значение. Затем удалить это значение из списка.
да что то вроде этого и хочу сделать, мне нудно создать list с 9 надписями, эти 9 надписей привяжутся к кнопкам, каждый раз при запуске по разному они будут распределяться между кнопками, и при нажатии кнопки будет выводиться текст, любой, на какой то одной привяжется надпись, "ты проиграл" и игра закончится

Добавлено через 1 минуту
Цитата Сообщение от CoolMind Посмотреть сообщение
По-видимому, не настроена виртуализация. У вас какой процессор? Можете попробовать в командной строке от администратора запустить команду "bcdedit ...", которую видите выше, и перезагрузиться.
спасибо уже решил проблему, проблема бала с библиотеками и разрешением экрана
CoolMind
417 / 400 / 65
Регистрация: 06.10.2012
Сообщений: 1,713
17.05.2016, 18:49     Сапер в Android Studio #17
Цитата Сообщение от ВладимирС Посмотреть сообщение
на какой то одной привяжется надпись, "ты проиграл" и игра закончится
Надо так: на нажатой кнопке сразу появляется "Ты проиграл", одновременно открываются остальные с разными надписями
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.05.2016, 19:21     Сапер в Android Studio
Еще ссылки по теме:

Android GitHub в Android Studio
Аудиопроигрыватель Android studio Android
Android Android Studio - идентификаторы
Android Android Studio и logcat
Android Сохранение. Android Studio

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
ВладимирС
0 / 0 / 0
Регистрация: 18.12.2014
Сообщений: 64
17.05.2016, 19:21  [ТС]     Сапер в Android Studio #18
Цитата Сообщение от CoolMind Посмотреть сообщение
на нажатой кнопке сразу появляется "Ты проиграл", одновременно открываются остальные с разными надписями
о так мне даже больше нравится
Yandex
Объявления
17.05.2016, 19:21     Сапер в Android Studio
Ответ Создать тему
Опции темы

Текущее время: 22:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru