İş Tecrubesi
Eğitim Geçmişi
Sertifikalar & Başarılar
Kullanıcıya ait test sonucu bulunmamaktadır.
Dil Becerileri
Son Forum Aktiviteleri
4Unity3D Üzerinde Zamanlanmış Animasyon Sorunu
Merhaba arkadaşlar.
Öncelikle ne yapmaya çalıştığımı anlatayım. Android üzerinde çalışacak interaktif masal yapmaya çalışıyorum. Masaldaki karakterler sıra kendilerine geldiğinde konuşacaklar ve konuşurlarken de hareket edecekler. Projem 2 boyutlu olacak.
Photoshop üzerinde oluşturduğum 16 resmi Unity'e attığımda animasyona isim vermemi istiyor ve ben Myanimation deyip kaydediyorum. Biraz araştırdıktan sonra bir animasyonun sürekli çalışmaması ve ben kodla çağırdığımda çalışması için Debug'dan Legacy'i açmam gerektiğini öğrendim. Ben de öyle yapıyorum. Fakat Legacy'i açtığımda ilk resim haricindeki 15 resim Pptr Curve Mapping içindeki Size'den siliniyor. (Sanırım sorun burada. Çünkü onlar silindikten sonra animation çalışmıyor.. Fakat tek resim ile çalışıp o resme sağa sola gitme dönme vb. hareketler eklersem Unity içindeki animationdan o zaman animation çalışıyor.)
Her neyse ben yine de Add component -> Miscellaneous -> Animation menüsünden Animation ekleyip Myanimation'u da içine atıyorum. Bir de şu şekilde bir script yazıyorum:
function Start() {
Invoke("Ersakonus", 1);
}
function Ersakonus() {
Debug.Log("Ersa Konusuyor");
animation.Play("Myanimation");
}
Bu scripti de karakterin içine atıyorum. Tüm karakterleri bu şekilde sıraları geldiklerinde konuşturup hareket ettireceğim. Fakat olmuyor. Sebebini bilen yardım edebilir mi?
Şimdiden teşekkür ederim.
Programımda reklam gösterme sorunu...
Merhaba arkadaşlar...
Mobil programımda eklediğim banner reklamlar göstermiyor. Dün gösteriyordu. Dünden bu yana 2 patch yaptım ve bugün farkettim ki göstermiyor.
Reklamı çalışan başka bir programımdan reklamla ilgili kodları aldım gradle dosyaları da dahil olmak üzere ama yine göstermedi.
Programdaki kodları başka programa koyduğumda da reklam gösterdi.
Ayrıca test device kodlarını eklediğimde test reklamlarını görüyorum.
Acaba programın package'ine özel ban gibi bir şey var mı? Ban gerektirecek bir şey de yapmadım gerçi. Kendi reklamlarıma da tıklamadım. Fakat diğer programlarımda bir sorun yok ama bu program reklam göstermiyor. Problemin ne olduğunu bilen var mı?
Android Studio'da oynatma sorunu
Merhaba arkadaşlar...
Buradan bir arkadaşın büyük yardımlarıyla bir program yapıyoruz. Fakat şöyle bir sorunumuz var...
Ben anasınıfı öğretmeniyim. 4-5 yaş çocuklar için bir test programı yapmaya çalışıyorum. Normalde olması gereken:
1. soru çıkacak. Soruyla birlikte benim önceden hazırladığım ses dosyası açılıp çocuklara soruyu seslendirecek. Çocuk doğru ya da yanlış cevaba tıkladığında sonraki soru açılacak. 2. soruya geçerken 1. soru soundu duracak.
2. soru çıkacak. 1. sorudaki işlem tekrarlanacak. Bu şekilde 10 soru sorulacak. Ve 10 sorunun sonunda 8 ya da daha fazla doğrusu varsa alkış sesi çalacak. Daha az doğrusu varsa tekrar dene sesi çalacak.
Bu söylediklerimin hepsini yaptık. Fakat nedense sorularda bazen ses çalmıyor. Aynı soru ve aynı sound olmasına rağmen bazen sound çalıyor bazen çalmıyor.
Kodlarımız şu şekilde:
class dosyası:
package tr.com.blogspot.etkinlikhavuzu.benimilkogretmenim;
import android.app.Activity;
import android.content.Intent;
import android.media.AudioManager;
import android.media.SoundPool;
import android.os.Bundle;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.ImageView;
import android.widget.TextView;
import java.util.ArrayList;
import java.util.Random;
public class AA extends Activity implements View.OnClickListener {
TextView soru, sonuc, dogrusayi, yanlissayi;
ImageView secenek1, secenek2, secenek3;
ArrayList<Soru> sorular;
Random random;
int dogruSayisi, yanlisSayisi, sayac, dogruCevap, kalanSoruSayisi, toplamSorusayisi;
SoundPool soundPool, soundPoolDogru, soundPoolYanlis;
int sound, dogruSound, yanlisSound;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.aa);
init();
sorulariYukle();
}
public void init() {
secenek1 = (ImageView) findViewById(R.id.secenek1);
secenek1.setOnClickListener(this);
secenek2 = (ImageView) findViewById(R.id.secenek2);
secenek2.setOnClickListener(this);
secenek3 = (ImageView) findViewById(R.id.secenek3);
secenek3.setOnClickListener(this);
soru = (TextView) findViewById(R.id.soru);
sonuc = (TextView) findViewById(R.id.sonuc);
dogrusayi = (TextView) findViewById(R.id.dogrusayi);
yanlissayi = (TextView) findViewById(R.id.yanlissayi);
sorular = new ArrayList<Soru>();
random = new Random();
kalanSoruSayisi = 10;
toplamSorusayisi= 22;
soundPool = new SoundPool(10, AudioManager.STREAM_MUSIC, 100);
soundPoolDogru = new SoundPool(10, AudioManager.STREAM_MUSIC, 100);
soundPoolYanlis = new SoundPool(10, AudioManager.STREAM_MUSIC, 100);
dogruSound = soundPoolDogru.load(this, R.raw.alkis, 1);
yanlisSound = soundPoolYanlis.load(this, R.raw.tekrar, 1);
}
public void sorulariYukle() {
sorular.add(new Soru("Hangisi Yeşildir?", R.raw.yesil, R.drawable.yesilelma, R.drawable.kirmizielma, R.drawable.kirmizielma, R.drawable.yesilelma));
sorular.add(new Soru("Hangisi Kırmızıdır?", R.raw.kirmizi, R.drawable.yesilelma, R.drawable.yesilelma, R.drawable.kirmizielma, R.drawable.kirmizielma));
sorular.add(new Soru("Hangisi Beyazdır?", R.raw.beyaz, R.drawable.beyazsapka, R.drawable.sarisapka, R.drawable.kirmizisapka, R.drawable.beyazsapka));
sorular.add(new Soru("Hangisi Siyahtır?", R.raw.siyah, R.drawable.pembesapka, R.drawable.siyahsapka, R.drawable.kirmizisapka, R.drawable.siyahsapka));
sorular.add(new Soru("Hangisi Kırmızıdır?", R.raw.kirmizi, R.drawable.turuncusapka, R.drawable.morsapka, R.drawable.kirmizisapka, R.drawable.kirmizisapka));
sorular.add(new Soru("Hangisi Mavidir?", R.raw.mavi, R.drawable.yesilsapka, R.drawable.mavisapka, R.drawable.siyahsapka, R.drawable.mavisapka));
sorular.add(new Soru("Hangisi Sarıdır?", R.raw.sari, R.drawable.beyazsapka, R.drawable.kahvesapka, R.drawable.sarisapka, R.drawable.sarisapka));
sorular.add(new Soru("Hangisi Yeşildir?", R.raw.yesil, R.drawable.turuncusapka, R.drawable.siyahsapka, R.drawable.yesilsapka, R.drawable.yesilsapka));
sorular.add(new Soru("Hangisi Turuncudur?", R.raw.turuncu, R.drawable.turuncusapka, R.drawable.kahvesapka, R.drawable.morsapka, R.drawable.turuncusapka));
sorular.add(new Soru("Hangisi Mordur?", R.raw.mor, R.drawable.beyazsapka, R.drawable.yesilsapka, R.drawable.morsapka, R.drawable.morsapka));
sorular.add(new Soru("Hangisi Pembedir?", R.raw.pembe, R.drawable.beyazsapka, R.drawable.siyahsapka, R.drawable.pembesapka, R.drawable.pembesapka));
sorular.add(new Soru("Hangisi Kahverengidir?", R.raw.kahverengi, R.drawable.yesilsapka, R.drawable.pembesapka, R.drawable.kahvesapka, R.drawable.kahvesapka));
sorular.add(new Soru("Hangisi Beyazdır?", R.raw.beyaz, R.drawable.beyazeldiven, R.drawable.sarieldiven, R.drawable.kirmizieldiven, R.drawable.beyazeldiven));
sorular.add(new Soru("Hangisi Siyahtır?", R.raw.siyah, R.drawable.pembeeldiven, R.drawable.siyaheldiven, R.drawable.kirmizieldiven, R.drawable.siyaheldiven));
sorular.add(new Soru("Hangisi Kırmızıdır?", R.raw.kirmizi, R.drawable.turuncueldiven, R.drawable.moreldiven, R.drawable.kirmizieldiven, R.drawable.kirmizieldiven));
sorular.add(new Soru("Hangisi Mavidir?", R.raw.mavi, R.drawable.yesileldiven, R.drawable.mavieldiven, R.drawable.siyaheldiven, R.drawable.mavieldiven));
sorular.add(new Soru("Hangisi Sarıdır?", R.raw.sari, R.drawable.beyazeldiven, R.drawable.kahveeldiven, R.drawable.sarieldiven, R.drawable.sarieldiven));
sorular.add(new Soru("Hangisi Yeşildir?", R.raw.yesil, R.drawable.turuncueldiven, R.drawable.siyaheldiven, R.drawable.yesileldiven, R.drawable.yesileldiven));
sorular.add(new Soru("Hangisi Turuncudur?", R.raw.turuncu, R.drawable.turuncueldiven, R.drawable.kahveeldiven, R.drawable.moreldiven, R.drawable.turuncueldiven));
sorular.add(new Soru("Hangisi Mordur?", R.raw.mor, R.drawable.beyazeldiven, R.drawable.yesileldiven, R.drawable.moreldiven, R.drawable.moreldiven));
sorular.add(new Soru("Hangisi Pembedir?", R.raw.pembe, R.drawable.beyazeldiven, R.drawable.siyaheldiven, R.drawable.pembeeldiven, R.drawable.pembeeldiven));
sorular.add(new Soru("Hangisi Kahverengidir?", R.raw.kahverengi, R.drawable.yesileldiven, R.drawable.pembeeldiven, R.drawable.kahveeldiven, R.drawable.kahveeldiven));
sayac = random.nextInt(toplamSorusayisi);
soru.setText(sorular.get(sayac).getSoru());
secenek1.setImageResource(sorular.get(sayac).getSecenek1());
secenek2.setImageResource(sorular.get(sayac).getSecenek2());
secenek3.setImageResource(sorular.get(sayac).getSecenek3());
dogruCevap = sorular.get(sayac).getDogruCevap();
sound = soundPool.load(this, sorular.get(sayac).getSoruSesi(), 1);
soundPool.play(sound, 1, 1, 0, 0, 1);
}
@Override
public void onClick(View view) {
soundPool.stop(sound);
switch (view.getId()) {
case R.id.secenek1:
if (dogruCevap == sorular.get(sayac).getSecenek1()) {
dogruSayisi++;
dogrusayi.setText(String.valueOf(dogruSayisi));
} else {
yanlisSayisi++;
yanlissayi.setText(String.valueOf(yanlisSayisi));
}
siradakiSoru();
break;
case R.id.secenek2:
if (kalanSoruSayisi == 0) {
soundPoolDogru.stop(dogruSound);
soundPoolYanlis.stop(yanlisSound);
startActivity(new Intent(this, MainActivity.class));
finish();
} else {
if (dogruCevap == sorular.get(sayac).getSecenek2()) {
dogruSayisi++;
dogrusayi.setText(String.valueOf(dogruSayisi));
} else {
yanlisSayisi++;
yanlissayi.setText(String.valueOf(yanlisSayisi));
}
siradakiSoru();
}
break;
case R.id.secenek3:
if (dogruCevap == sorular.get(sayac).getSecenek3()) {
dogruSayisi++;
dogrusayi.setText(String.valueOf(dogruSayisi));
} else {
yanlisSayisi++;
yanlissayi.setText(String.valueOf(yanlisSayisi));
}
siradakiSoru();
break;
}
}
public void siradakiSoru() {
soundPool.stop(sound);
kalanSoruSayisi--;
if (kalanSoruSayisi == 0) {
soru.setText(String.valueOf(dogruSayisi)+" Doğru "+String.valueOf(yanlisSayisi)+" Yanlışın Var!!!");
sonuc.setText("Test Bitti!!!");
if (dogruSayisi >= 8) {
soundPoolDogru.play(dogruSound, 1, 1, 0, 0, 1);
secenek1.setClickable(false);
//secenek2.setClickable(false);
secenek3.setClickable(false);
secenek1.setImageResource(R.drawable.bos);
secenek2.setImageResource(R.drawable.alkis);
secenek3.setImageResource(R.drawable.bos);
}else{
soundPoolYanlis.play(yanlisSound, 1, 1, 0, 0, 1);
secenek1.setClickable(false);
//secenek2.setClickable(false);
secenek3.setClickable(false);
secenek1.setImageResource(R.drawable.bos);
secenek2.setImageResource(R.drawable.geri);
secenek3.setImageResource(R.drawable.bos);
}
} else {
sayac = random.nextInt(toplamSorusayisi);
soru.setText(sorular.get(sayac).getSoru());
secenek1.setImageResource(sorular.get(sayac).getSecenek1());
secenek2.setImageResource(sorular.get(sayac).getSecenek2());
secenek3.setImageResource(sorular.get(sayac).getSecenek3());
dogruCevap = sorular.get(sayac).getDogruCevap();
sound = soundPool.load(this, sorular.get(sayac).getSoruSesi(), 1);
soundPool.play(sound, 1, 1, 0, 0, 1);
}
}
}
XML dosyası:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFFFFF"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="tr.com.blogspot.etkinlikhavuzu.benimilkogretmenim.MainActivity">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="30dp">
<Button
android:id="@+id/dogru"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:background="@drawable/dogru" />
<Button
android:id="@+id/yanlis"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/dogru"
android:layout_marginTop="10dp"
android:background="@drawable/yanlis" />
<TextView
android:id="@+id/dogrusayi"
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_above="@+id/yanlis"
android:layout_toEndOf="@+id/dogru"
android:layout_toRightOf="@+id/dogru"
android:gravity="center"
android:text="0"
android:textColor="#006600"
android:textSize="30sp" />
<TextView
android:id="@+id/yanlissayi"
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_alignBottom="@+id/yanlis"
android:layout_toEndOf="@+id/yanlis"
android:layout_toRightOf="@+id/yanlis"
android:gravity="center"
android:text="0"
android:textColor="#990000"
android:textSize="30sp" />
<ImageView
android:id="@+id/secenek1"
android:layout_width="170dp"
android:layout_height="170dp"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<ImageView
android:id="@+id/secenek2"
android:layout_width="170dp"
android:layout_height="170dp"
android:layout_alignBottom="@+id/secenek1"
android:layout_centerHorizontal="true" />
<ImageView
android:id="@+id/secenek3"
android:layout_width="170dp"
android:layout_height="170dp"
android:layout_alignBottom="@+id/secenek2"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true" />
<TextView
android:id="@+id/soru"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/secenek2"
android:layout_marginBottom="18dp"
android:layout_toEndOf="@+id/dogrusayi"
android:layout_toRightOf="@+id/dogrusayi"
android:gravity="center"
android:text=""
android:textColor="#000000"
android:textSize="40sp"
android:textStyle="bold|italic" />
<TextView
android:text=""
android:textColor="#000000"
android:textSize="40sp"
android:textStyle="bold|italic"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/sonuc"
android:layout_above="@+id/soru"
android:layout_toRightOf="@+id/yanlissayi"
android:layout_toEndOf="@+id/yanlissayi" />
</RelativeLayout>
</RelativeLayout>
Bir Arttırma...
Merhaba arkadaşlar...
Eşim de ben de okul öncesi öğretmeniyiz ve Okul öncesi çocuklar için bir program yapmaya çalışıyorum.
Ekte gönderdiğim program üzerinde çalışıyorum. Şu an doğruya şıkka tıkladığında sıradaki rastgele bir soruya geçmeyi yaptım(sanırım) fakat doğruya ya da yanlışa tıkladığında sol üstteki 0 ların artmasını bir türlü yapamadım. Ya 213013103 gibi çok büyük bir sayı çıkıyor ya da ne kadar tıklarsam tıklayım 1 oluyor. Bir kere de hep 11 oldu. Onun haricinde de bolcca hata aldım. TextViev ile Int'i toplayamayız vs diye.
Doğru ve yanlış TextViewlerin başlangıç değerleri 0 (Aslında sayfalar değiştikçe rakamların kaldığı yerden devam etmesi için String dosyasına doğru için dsayi=0 ysayi=o verip TextViewleri de @string/dsayi ile @string/ysayi olarak yapmaya çalıştım ama oonu hiç beceremedim) Textviewlerin idleri dogrusayi ile yanlissayi , doğru şıkkın id'si d1 , yanlış şıkkın idleri y1 ve y2
Kısaca tam olarak özetlemek gerekirse yapmak istediğim şey her bir konuda resimdeki sayfa gibi 40-50 sayfa yaptıktan sonra doğru şıkka basıldıkça random olarak başka bir soru sayfasının gelmesini istiyorum. (buraya kadarını yaptım.) Fakat doğru sayısı ya da yanlış sayısı belli bir sayıya ulaşana kadar (mesela 20) her doğruya ya da yanlışa basılışında birer birer artmasını istiyorum.
2. sorum Normalde bunu her bir sayfaya birer class ve xml dosyası açarak yapacağım. Bunun başka bir yolu var mı? App inventorde buttonları yazıları filan gizleyip göstererek bir sayfada birden fazla soru sorulabiliyordu. Bunda da öyle bir şey yapılabiliyor mu?
Yardımcı olursanız çok sevinirim. Şimdiden teşekkür ederim.