NOVINKA! E-learningové kurzy umělé inteligence. Nyní AI za nejlepší ceny. Zjisti více:
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!
Avatar
feardragon6
Člen
Avatar
feardragon6:11.3.2017 15:39

Dobrý deň, v prílohe posielam taký jednoduchý obrázok wireframu, ktorí má predstavovať jednu jednoduchú aplikáciu, ktorú by som chcel vytvoriť. Jedná sa o aplikáciu, ktorá bude počítať skóre pre dvoch strelcov, resp započítavať im skóre, ako kdo trafil po kliknutí na úsek na terči, ktorí bude normálne na displeji. Osobne dokážem z tlačítka normálne sčítavať a zobrazovať informácie v tom celkovom skóre jednotlivých týmov, aj ten reset button, aj vytvoriť takýto layout. Čo osobne ale neviem, je vytvoriť ten terč nejakým spôsobom a z neho potom získavať hodnoty a započítavať ich jednotlivému týmu. Ďakujem za akúkoľvek radu.

 
Odpovědět
11.3.2017 15:39
Avatar
feardragon6
Člen
Avatar
feardragon6:11.3.2017 16:02

Inak pre porovnanie, niečo podobného a veľmi jednoduchého som vytváral aj tu:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_alignParentTop="true"
        android:orientation="horizontal">

        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:orientation="vertical">

            <TextView
                android:id="@+id/textView"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:padding="4dp"
                android:paddingBottom="16dp"
                android:text="Team A"
                android:textColor="#616161"
                android:textSize="14sp" />

            <TextView
                android:id="@+id/team_a_score"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:padding="4dp"
                android:text="0"
                android:textColor="#000000"
                android:textSize="56sp" />
            />

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="8dp"
                android:layout_marginLeft="24dp"
                android:layout_marginRight="24dp"
                android:onClick="addThreeForTeamA"
                android:text="+3 Points" />

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="8dp"
                android:layout_marginLeft="24dp"
                android:layout_marginRight="24dp"
                android:onClick="addTwoForTeamA"
                android:text="+2 Points" />

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="8dp"
                android:layout_marginLeft="24dp"
                android:layout_marginRight="24dp"
                android:onClick="addOneForTeamA"
                android:text="Free throw" />
        </LinearLayout>

        <View
            android:layout_width="1dp"
            android:layout_height="match_parent"
            android:layout_marginTop="18dp"
            android:background="@android:color/darker_gray" />

        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:orientation="vertical">

            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"

                android:gravity="center"
                android:padding="4dp"
                android:paddingBottom="16dp"
                android:text="Team B"
                android:textColor="#616161"
                android:textSize="14sp" />

            <TextView
                android:id="@+id/team_b_score"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:gravity="center"
                android:padding="4dp"
                android:text="0"
                android:textColor="#000000"
                android:textSize="56sp" />

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="8dp"
                android:layout_marginLeft="24dp"
                android:layout_marginRight="24dp"
                android:onClick="addThreeForTeamB"
                android:text="+3 POINTS" />

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="8dp"
                android:layout_marginLeft="24dp"
                android:layout_marginRight="24dp"
                android:onClick="addTwoForTeamB"
                android:text="+2 POINTS" />

            <Button
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginBottom="8dp"
                android:layout_marginLeft="24dp"
                android:layout_marginRight="24dp"
                android:onClick="addOneForTeamB"
                android:text="FREE THROW" />


        </LinearLayout>

    </LinearLayout>

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="32dp"
        android:onClick="Reset"
        android:text="Reset" />

</RelativeLayout>
package com.example.android.courtcounter;

import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {
    int ScoreOfTeamA = 0;
    int ScoreOfTeamB = 0;

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

    /**
     * Increase the score for Team A by 1 point.
     */
    public void addOneForTeamA(View v) {
        ScoreOfTeamA = ScoreOfTeamA + 1;
        displayForTeamA(ScoreOfTeamA);
    }

    /**
     * Increase the score for Team A by 2 points.
     */
    public void addTwoForTeamA(View v) {
        ScoreOfTeamA = ScoreOfTeamA + 2;
        displayForTeamA(ScoreOfTeamA);
    }

    /**
     * Increase the score for Team A by 3 points.
     */
    public void addThreeForTeamA(View v) {
        ScoreOfTeamA = ScoreOfTeamA + 3;
        displayForTeamA(ScoreOfTeamA);
    }

    /**
     * Increase the score for Team B by 1 point.
     */
    public void addOneForTeamB(View v) {
        ScoreOfTeamB = ScoreOfTeamB + 1;
        displayForTeamB(ScoreOfTeamB);
    }

    /**
     * Increase the score for Team B by 2 points.
     */
    public void addTwoForTeamB(View v) {
        ScoreOfTeamB = ScoreOfTeamB + 2;
        displayForTeamB(ScoreOfTeamB);
    }

    /**
     * Increase the score for Team B by 3 points.
     */
    public void addThreeForTeamB(View v) {
        ScoreOfTeamB = ScoreOfTeamB + 3;
        displayForTeamB(ScoreOfTeamB);
    }

    /**
     * Displays the given score for Team A.
     */
    public void displayForTeamA(int score) {
        TextView scoreView = (TextView) findViewById(R.id.team_a_score);
        scoreView.setText(String.valueOf(score));
    }

    /**
     * Displays the given score for Team B.
     */
    public void displayForTeamB(int score) {
        TextView scoreView = (TextView) findViewById(R.id.team_b_score);
        scoreView.setText(String.valueOf(score));
    }

    public void Reset(View v) {
        ScoreOfTeamA = 0;
        displayForTeamA(ScoreOfTeamA);
        ScoreOfTeamB = 0;
        displayForTeamB(ScoreOfTeamB);
    }
}
 
Nahoru Odpovědět
11.3.2017 16:02
Avatar
zitekv
Člen
Avatar
Odpovídá na feardragon6
zitekv:11.3.2017 21:30

Ahoj, do layoutu vlož ImageView a jako jeho zdroj použij xml se ShapeDrawable typ "oval". Více možností si jistě najdeš na netu. Nejhorší je zjistit jak se tomu nadává :-)
Pro začátek zkus do hlavního xml vložit na místě terče

<ImageView
android:id="@+id/imageView1"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
android:layout_width="352dp"
android:layout_height="352dp"
android:padding="0dp"
android:src="@drawable/oval1"/>

A do res/drawable tento soubor oval1.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<stroke
android:width="1dp"
android:color="#0000ff"/>
</shape>
 
Nahoru Odpovědět
11.3.2017 21:30
Avatar
feardragon6
Člen
Avatar
feardragon6:11.3.2017 21:31

Poprosím nejakého móda aby to presunul do lokácie fóra hardwaru priamo do androidu, aby to potom malo väčšiu relevanciu... Nevšimol som si že je tu aj originál lokácia pre android, ,ďakujem.

 
Nahoru Odpovědět
11.3.2017 21:31
Avatar
feardragon6
Člen
Avatar
Odpovídá na zitekv
feardragon6:11.3.2017 21:48

Diky moc zitekv, ten ovál mi to dá do layoutu, problém je ako to vymyslieť, aby ich bolo viac v sebe a aby to tým pádom vyzeralo ako terč a následne vymyslieť, ako tomu dať funkcionalitu. Čo som sa pýtal na stack overflow tak mi tam ľudia rovno dali odkaz na android developers na vytváranie vlastných view a dávanie im špecifických hodnot a vlastností, čo je ale momentálne ďaleko nad moje schopnosti. Neviem či existuje nejaký spôsob, ako to obísť... :(

 
Nahoru Odpovědět
11.3.2017 21:48
Avatar
zitekv
Člen
Avatar
Odpovídá na feardragon6
zitekv:11.3.2017 22:00

Poskládáš postupně víc kruhů do sebe, přidáš osy. Začni s jedním terčem a až potom laboruj s dvěma. No a pak budeš snimat doteky a počítat :-)

 
Nahoru Odpovědět
11.3.2017 22:00
Avatar
feardragon6
Člen
Avatar
Odpovídá na zitekv
feardragon6:11.3.2017 22:17

To hej ale ja vôbec neviem, ako pridať ďalší kruh, a už vôbec nie ako pridať osi a čo je vlastne ten obrázok čo si mi poslal, okrem toho ako to ma finálne vyzerať. Mohol by si mi skúsiť prosím ťa od toho poslať kód, aby som vlastne vedel od čoho sa odraziť ? Toto vidím prvý krát, nemám poňatie ani aké základné princípy sa tu uplatňujú.

 
Nahoru Odpovědět
11.3.2017 22:17
Avatar
zitekv
Člen
Avatar
zitekv:11.3.2017 22:36

Aha, tak to ti doporučím projít si nejdřív tutoriály tady na itnetworku: android

Kód bych ti poslat mohl, ale ... není to dobrá ukázka!

 
Nahoru Odpovědět
11.3.2017 22:36
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 8 zpráv z 8.