Difference between revisions of "Android udvikling Marts 2017"
(→Kode til at klikke på en knap) |
(→Eksempel på if-sætninger) |
||
(13 intermediate revisions by the same user not shown) | |||
Line 63: | Line 63: | ||
=Tirsdag= | =Tirsdag= | ||
− | Link til min tekst app: https://drive.google.com/file/d/0B5oDizcmFQ1YY0JuMlNRSTlPSUk/view?usp=sharing | + | Når vi skal lave en knap i vores app, skal vi først oprette en knap i vores grafiske-layout. |
+ | |||
+ | Derefter skal vi lave en knap i vores kode ved at skrive følgende: | ||
+ | |||
+ | ''oprettelse af en knap igennem kode:'' | ||
+ | <source lang="Java"> | ||
+ | Button minKnap; | ||
+ | </source> | ||
+ | |||
+ | Nu har vi oprettet en knap i vores kode, men den er forskellig fra den knap som der ligger i vores grafiske-layout. | ||
+ | |||
+ | Derfor skal vi fortælle vores knap i koden at den skal være en reference til den knap der ligger i vores grafiske-layout, sådan at de bliver kædet sammen. | ||
+ | |||
+ | [[File:IllustrationAfKodeOgGrafiskLayout.jpg]] | ||
+ | |||
+ | Dette gøres ved at skrive følgende: | ||
+ | |||
+ | ''sammenkædning af grafisk knap og kode:'' | ||
+ | <source lang="Java"> | ||
+ | minKnap = (Button) findViewById(R.id.minKnap); | ||
+ | </source> | ||
+ | |||
+ | Det sidste vi så mangler er at vi skal kunne trykke på vores knap, hvorefter den vil eksekvere noget kode. (eksempelvis skrive "hej") | ||
+ | |||
+ | Det gør vi ved at skrive følgende: | ||
+ | <source lang="Java"> | ||
+ | minKnap.setOnClickListener(new View.OnClickListener() | ||
+ | { | ||
+ | @Override | ||
+ | public void onClick(View v) | ||
+ | { | ||
+ | //Her skal du skrive den kode der skal køres når man klikker på knappen. | ||
+ | } | ||
+ | |||
+ | } | ||
+ | ); | ||
+ | </source> | ||
+ | |||
+ | Nu har du en fungerende knap der kan trykkes på. Er du i tvivl, kan du downloade mit færdige projekt her: | ||
+ | Link til min tekst-app: https://drive.google.com/file/d/0B5oDizcmFQ1YY0JuMlNRSTlPSUk/view?usp=sharing | ||
Line 70: | Line 109: | ||
<source lang="Java"> | <source lang="Java"> | ||
− | Button minKnap; //Dette er en knap | + | Button minKnap; //Dette er en knap |
TextView minTekst; //Dette er et tekstfelt | TextView minTekst; //Dette er et tekstfelt | ||
Line 95: | Line 134: | ||
</source> | </source> | ||
+ | |||
+ | =Onsdag= | ||
+ | |||
+ | ==Opgaver:== | ||
+ | |||
+ | |||
+ | '''Opgave 1:''' | ||
+ | Lav en app, der modtager et fornavn i en tekstbox, samt et efternavn i en seperart textbox, og efter et klik på en knap, vil de blive lagt sammen som et resultat: “Mads Nielsen”. | ||
+ | |||
+ | '''Opgave 2:''' | ||
+ | Lav programmet til en lommeregner der lægger 2 tal sammen (af typen int i stedet for string). | ||
+ | (en simpel lommeregner) | ||
+ | Udvid programmet, sådan at brugeren kan trække tallende fra hinanden, lægge dem sammen gange dem eller dividere dem. | ||
+ | |||
+ | '''Opgave 3:''' | ||
+ | Lav en simpel BMI beregner der også fortæller brugeren hvilken vægtklasse han/hun er i. | ||
+ | Link til eksempel: http://www.beregnbmi.dk/Default.aspx | ||
+ | |||
+ | '''Løsning af opgave:''' https://drive.google.com/file/d/0B5oDizcmFQ1YSzZ2WU1XRjlvSjA/view?usp=sharing | ||
+ | |||
+ | '''Opgave 4:''' | ||
+ | Lav en lommeregner i android studio der ligner den der findes på Windows. | ||
+ | |||
+ | '''Opgave 5:''' | ||
+ | Lav et kryds og bolle spil der ligner det der findes i google. | ||
+ | |||
+ | '''Opgave 5.5:''' | ||
+ | Eller lav et hangman spil der udvælger et tilfældigt ord, som brugeren så skal gætte. | ||
+ | |||
+ | '''Opgave 6:''' | ||
+ | Lav en madbestillings-app der ligner den fra justeat.dk. | ||
+ | App’en skal indeholde billeder som skal kunne trykkes på. | ||
+ | |||
+ | '''Opgave 7:''' | ||
+ | Lav en app der tjekker brugerens gyroskop i telefonen, og udskriver koordinaterne til skærmen. | ||
+ | |||
+ | |||
+ | '''Opgave 8:''' | ||
+ | Lav et Pong spil i android, med en simpel A.I, der ikke kan bevæger sig ret hurtigt. | ||
+ | |||
+ | '''Opgave 9:''' | ||
+ | Lav en valutaomregner der tjekker den nuværende valuta op imod en hjemmeside, og kan omregne det beløb som brugeren taster ind. | ||
+ | |||
+ | '''Opgave 10:''' | ||
+ | Selvvalgt opgave, hvor eleven selv bestemmer sværhedsgraden. | ||
+ | |||
+ | |||
+ | |||
+ | Sådan laves en Toast: | ||
+ | <source lang="Java"> | ||
+ | |||
+ | Context context = getApplicationContext(); | ||
+ | String text = "Du bør drikke cola light :)"; | ||
+ | int duration = Toast.LENGTH_LONG; | ||
+ | |||
+ | Toast toast = Toast.makeText(context, text, duration); | ||
+ | toast.show(); | ||
+ | </source> | ||
+ | |||
+ | |||
+ | =Torsdag:= | ||
+ | |||
+ | Link til mit starter-projekt: https://drive.google.com/file/d/0B5oDizcmFQ1Yb1BuQ3gwT1BKS1k/view?usp=sharing | ||
+ | |||
+ | |||
+ | |||
+ | ==Eksempel på if-sætninger== | ||
+ | |||
+ | |||
+ | <source lang="Java"> | ||
+ | int heltal = 100000; | ||
+ | |||
+ | if(heltal == 100000) | ||
+ | { | ||
+ | System.out.println("dit heltal var præsic 100.000!"); | ||
+ | } | ||
+ | if(heltal > 0) | ||
+ | { | ||
+ | System.out.println("dit heltal var større end nul!"); | ||
+ | } | ||
+ | if(heltal < 0) | ||
+ | { | ||
+ | System.out.println("dit heltal var mindre end nul!"); | ||
+ | } | ||
+ | |||
+ | |||
+ | //Udskriver "dit heltal var præsic 100.000!" og "dit heltal var større end nul!" | ||
+ | </source> | ||
+ | |||
+ | |||
+ | =Fredag:= | ||
+ | |||
+ | ==Avanceret lommeregner== | ||
+ | (Dog stadig ikke perfekt) | ||
+ | |||
+ | Link til mit projekt: https://drive.google.com/file/d/0B5oDizcmFQ1Yb1BuQ3gwT1BKS1k/view?usp=sharing |
Latest revision as of 12:10, 10 March 2017
Contents
Generelt
Underviserens navn: Mads Nielsen
Link til Android studio download: https://developer.android.com/studio/index.html
Hvis du vil benytte en virtuel android enhed, væld da Lollipop. (version 5)
Mandag
VariabelTyper
Variabel Type | værdi |
---|---|
String | Tekst |
int | Heltal |
double | kommatal |
AndroidStudio
Kode til at klikke på en knap
Button minKnap;
TextView mitTextView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
minKnap = (Button) findViewById(R.id.minKnap);
mitTextView = (TextView) findViewById(R.id.mitTekstFelt);
minKnap.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v) {
//Insert code here.
String mitTal = "Hej Mads!";
mitTextView.setText(mitTal);
}
});
}
Tirsdag
Når vi skal lave en knap i vores app, skal vi først oprette en knap i vores grafiske-layout.
Derefter skal vi lave en knap i vores kode ved at skrive følgende:
oprettelse af en knap igennem kode:
Button minKnap;
Nu har vi oprettet en knap i vores kode, men den er forskellig fra den knap som der ligger i vores grafiske-layout.
Derfor skal vi fortælle vores knap i koden at den skal være en reference til den knap der ligger i vores grafiske-layout, sådan at de bliver kædet sammen.
Dette gøres ved at skrive følgende:
sammenkædning af grafisk knap og kode:
minKnap = (Button) findViewById(R.id.minKnap);
Det sidste vi så mangler er at vi skal kunne trykke på vores knap, hvorefter den vil eksekvere noget kode. (eksempelvis skrive "hej")
Det gør vi ved at skrive følgende:
minKnap.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
//Her skal du skrive den kode der skal køres når man klikker på knappen.
}
}
);
Nu har du en fungerende knap der kan trykkes på. Er du i tvivl, kan du downloade mit færdige projekt her: Link til min tekst-app: https://drive.google.com/file/d/0B5oDizcmFQ1YY0JuMlNRSTlPSUk/view?usp=sharing
Kode:
Button minKnap; //Dette er en knap
TextView minTekst; //Dette er et tekstfelt
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
minKnap = (Button) findViewById(R.id.minKnap);
minTekst = (TextView) findViewById(R.id.minTekst);
minKnap.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
minTekst.setText("Hej!"); //Det er her at voores kode skal skrives, når der trykkes på knappen.
}
}
);
Onsdag
Opgaver:
Opgave 1: Lav en app, der modtager et fornavn i en tekstbox, samt et efternavn i en seperart textbox, og efter et klik på en knap, vil de blive lagt sammen som et resultat: “Mads Nielsen”.
Opgave 2: Lav programmet til en lommeregner der lægger 2 tal sammen (af typen int i stedet for string). (en simpel lommeregner) Udvid programmet, sådan at brugeren kan trække tallende fra hinanden, lægge dem sammen gange dem eller dividere dem.
Opgave 3: Lav en simpel BMI beregner der også fortæller brugeren hvilken vægtklasse han/hun er i. Link til eksempel: http://www.beregnbmi.dk/Default.aspx
Løsning af opgave: https://drive.google.com/file/d/0B5oDizcmFQ1YSzZ2WU1XRjlvSjA/view?usp=sharing
Opgave 4: Lav en lommeregner i android studio der ligner den der findes på Windows.
Opgave 5: Lav et kryds og bolle spil der ligner det der findes i google.
Opgave 5.5: Eller lav et hangman spil der udvælger et tilfældigt ord, som brugeren så skal gætte.
Opgave 6: Lav en madbestillings-app der ligner den fra justeat.dk. App’en skal indeholde billeder som skal kunne trykkes på.
Opgave 7: Lav en app der tjekker brugerens gyroskop i telefonen, og udskriver koordinaterne til skærmen.
Opgave 8:
Lav et Pong spil i android, med en simpel A.I, der ikke kan bevæger sig ret hurtigt.
Opgave 9: Lav en valutaomregner der tjekker den nuværende valuta op imod en hjemmeside, og kan omregne det beløb som brugeren taster ind.
Opgave 10: Selvvalgt opgave, hvor eleven selv bestemmer sværhedsgraden.
Sådan laves en Toast:
Context context = getApplicationContext();
String text = "Du bør drikke cola light :)";
int duration = Toast.LENGTH_LONG;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
Torsdag:
Link til mit starter-projekt: https://drive.google.com/file/d/0B5oDizcmFQ1Yb1BuQ3gwT1BKS1k/view?usp=sharing
Eksempel på if-sætninger
int heltal = 100000;
if(heltal == 100000)
{
System.out.println("dit heltal var præsic 100.000!");
}
if(heltal > 0)
{
System.out.println("dit heltal var større end nul!");
}
if(heltal < 0)
{
System.out.println("dit heltal var mindre end nul!");
}
//Udskriver "dit heltal var præsic 100.000!" og "dit heltal var større end nul!"
Fredag:
Avanceret lommeregner
(Dog stadig ikke perfekt)
Link til mit projekt: https://drive.google.com/file/d/0B5oDizcmFQ1Yb1BuQ3gwT1BKS1k/view?usp=sharing