Я пробовал так много способов показать Toast, что я хочу (в классе DrawView), что я действительно не знаю, куда бежать больше.Toast not shows - Android
Видимо, это действительно просто, но я чего-то не хватает. Я видел другие связанные должности, но не имел успеха.
Любые идеи, пожалуйста?
import android.app.Activity;
import android.os.Bundle;
public class MyActivity extends Activity{
DrawView drawView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
drawView = new DrawView(this);
setContentView(drawView);
}
}
DrawView Класс:
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.MotionEvent;
import android.view.View;
import android.widget.Toast;
public class DrawView extends View implements View.OnTouchListener{
Paint paint = new Paint();
public DrawView(MyActivity myActivity) {
super(myActivity);
setBackgroundColor(Color.WHITE);
paint.setColor(Color.BLACK);
}
@Override
protected void onDraw(Canvas canvas) {
canvas.drawText("I'm text in a canvas!", 10, 10, paint);
}
@Override
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_DOWN){
Toast.makeText(getContext(),"I'm a Toast!",Toast.LENGTH_SHORT).show();
}
return false;
}
}
Посмотрите на это [ссылка] (http://stackoverflow.com/questions/1026 973/Android-Что-разностный-между-з-различных-методы-в-получить-A-контекстные/13945633 # 13945633). – ChuongPham