Ben Monodroid lern deniyorum! Java kodunu C# 'ye tekrar yazmaya çalışıyorum ve bazı problemlerim var: Runnable'ı nasıl kullanacağımı anlamıyorum. C# için tercüme coudn't olduğunu, Java kod parçası, mikroişlemciyi That:Nasıl Çalışır android için Mono Runnable kullanın
public class RunActivity extends Activity implements OnClickListener
{
...
private Handler mHandler;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.run);
...
mHandler = new Handler();
mHandler.postDelayed(mUpdateGeneration, 1000);
}
private Runnable mUpdateGeneration = new Runnable()
{
public void run()
{
mAdapter.next();
mLifeGrid.setAdapter(mAdapter);
mHandler.postDelayed(mUpdateGeneration, 1000);
}
};
...
Ben bu kod yazmak ve Runnable kullanmalıdır bana nasıl açıklayabilir misiniz? Bu Runnable, gridview bağdaştırıcısını güncellemek için kullanılır ve arka plandaki bağdaştırıcıdan ızgara görünümüne veri yükleyin. Güncelleme bağdaştırıcısını ana iş parçacığında denediysem? Bu (C# kodu) gibi:
mAdapter.next()
mLifeGrid.Adapter = mAdapter;
Thread.Sleep(1000);
Aktivite sıkıştı. Runnable'ı kullanamıyorsam, yeni iş parçacığında bağdaştırıcı ve gridview güncelleştirmeyi nasıl uygulayabilirim? böyle C# parçacığı, kullanıyorsanız:
...
Thread th = new Thread(new ThreadStart(mUpdatGeneration));
th.Start();
}
public void mUpdateGeneration()
{
mAdapter.next()
mLifeGrid.Adapter = mAdapter;
Thread.Sleep(1000);
}
herhangi yardım için tüm bir hata "System.NullReferenceException"
Teşekkür üretir! P.S. İngilizcemde :) için üzgünüm
yılında Runnable uygulanmasını çevirmek, böylece C# parçacığı sınıfları kullanmak nasıl. –
@KirkWoll 'Handler 'bir iş parçacığı sınıfı olmayabilir. Ana etkinlik sırasına göndermek için kullanabileceğiniz sınıf gibi görünüyor. – millimoose
@millimoose, sağ, ama kim Handler'ı uyguladı? Bu bir mono projeyse, Java deyimlerini kullanmamalı. –