У меня есть различные макеты XML. Во всех этих макетах у меня есть кнопки, но положение кнопки отличается в каждом макете. В моей деятельности эти макеты раздуваются случайным образом (любой макет может выйти на передний план). Поскольку содержимое всех макетов XML одинаково, у них есть одна общая черта - идентификатор кнопок. В каждом XML-файле только (android: layout_marginTop = "145sp" и android: layout_marginBottom = "45sp") отличается для кнопок.
В результате, если кнопка с именем «ALI» отображается в определенном углу, в следующий раз та же кнопка «ALI» может отображаться в другом углу экрана.
Теперь в своей деятельности я хочу, чтобы всякий раз, когда я нажимал на кнопку, ее соответствующее изображение отображалось точно над кнопкой в виде Toast
.
Но так как положение кнопки не зафиксировано, я не могу отобразить Toast
точно на кнопке. Позиция Toast
, которую я получаю, фиксируется независимо от положения кнопки. Но я хочу, чтобы он отображался прямо над кнопкой.
Я использовал следующий код. Если есть какой-либо метод, который может сообщить OnClickListener
о положении кнопки в пикселях во время выполнения, то это будет немного удобно.
КОД - КАК СЛЕДУЮЩИЙ для нажатия кнопки события:
button_ALI.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
Toast toast = Toast.makeText(getApplicationContext(),"This is Bat", Toast.LENGTH_SHORT);
toast.setGravity(Gravity.CENTER, 0, 0);
LinearLayout toastView = (LinearLayout) toast.getView();
ImageView imageCodeProject = new ImageView(getApplicationContext());
imageCodeProject.setImageResource(R.drawable.b_1);
toastView.addView(imageCodeProject, 0);
toast.show();
}
});