PDA

View Full Version : مشکل با متد set on click listener



loveali
شنبه 27 تیر 1394, 16:05 عصر
سلام
من تازه اکلیپس رو نصب کردم
یه مشکلی با متد set on click listener دارم
که وقتی این متد رو می زنم و داخلش کد می زنم برنامه اندروید force stop می ده
تاقبل از اینکه این کد ور بزنم مشکلی نداره
ممنون می شم راهنمایی کنید
اینم کد
در ضمن هیچ اروری هم کد نداره و فقط بعد از اجرا برنامه crash میشه

package com.example.ukki;

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v7.app.ActionBarActivity;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends ActionBarActivity {

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

if (savedInstanceState == null) {
getSupportFragmentManager().beginTransaction()
.add(R.id.container, new PlaceholderFragment())
.commit();
}
Button btn = (Button) findViewById(R.id.button1);
final TextView tv = (TextView) findViewById(R.id.textView1);
btn.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
tv.setText(10);

}
});
}



@Override
public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}



@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}

/**
* A placeholder fragment containing a simple view.
*/
public static class PlaceholderFragment extends Fragment {

public PlaceholderFragment() {}



@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_main, container, false);
return rootView;
}
}

}

Nevercom
شنبه 27 تیر 1394, 22:55 عصر
مشکل از کد tv.setText هست. ورودی اون رو یک Integerدرنظر گرفتید. اگر میخواید عدد ۱۰ رو نمایش بدید باید اون رو بین کوتیشن قرار بدید. این کد خطای زمان کامپایل نمیده چون این این متد ورودی از جنس Integer هم قبول می کنه، اما برای زمانی هست که میخواید متنی رو از Resource بخونه و نمایش بده (مثلاً R.string.text)

loveali
دوشنبه 29 تیر 1394, 15:11 عصر
ممنون از پاسختون
ولی اصلا مشکل اون نیست
چون من اصن هیچ کدی هم ننویسم و فقط از متد set on click listener استفاده کنم برنامه هام ارور می ده

#root#
دوشنبه 29 تیر 1394, 15:36 عصر
ممنون از پاسختون
ولی اصلا مشکل اون نیست
چون من اصن هیچ کدی هم ننویسم و فقط از متد set on click listener استفاده کنم برنامه هام ارور می ده

قبل از اینکه دوستمون پاسخ بالا رو بدن من هم میخواستم همون جواب رو بدم، ولی دیدم شما اشاره ای به متن logcat ندارین منصرف شدم،
تو این مدت هیچوقت نشده با خطایی مواجه بشم که در logcat بهش اشاره نشده باشه.
خطایی که هم اشاره شد اگه تنها خطای کدهاتون نباشه حداقل یکی از اونا هست.

gjmkdyttyhujk
دوشنبه 29 تیر 1394, 15:39 عصر
کدهای لاگ کتتون رو در زمان force close دادن بردارید و در اینجا قرار بدید تا بررسی کنیم.

92vdic
دوشنبه 29 تیر 1394, 18:17 عصر
اگر مشکل از setText نبود یک دلیل دیگه می تونه این باشه که id دکمه رو درست تعریف نکرده باشید