烤面包片不显示在麦克利克 package.com.custom; 导入java.util.ArrayList; 导入java.util.List; 导入android.app.Activity; 导入android.content.Intent; 导入android.os.Bundle; 导入android.util.Log; 导入android.view.view; 导入android.widget.AdapterView; 导入android.widget.AdapterView.OnItemClickListener; 导入android.widget.ListView; 导入android.widget.Toast; 公共类MainActivity扩展了活动{ 列表视图列表; /**在首次创建活动时调用*/ @凌驾 创建时的公共void(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.main); Log.v(“,”在创建时”); ListView列表=(ListView)findViewById(R.id.list); ListListOfPhoneBook=new ArrayList(); 添加(新的电话列表(“Sutadi”、“989”、“Jl.Pasar”); 添加(新的电话列表(“Iyand”、“1234455”、“Jl.Mall”); 添加(新的电话列表(“Yanti”、“00000”、“Jl.Sawah”); Log.v(“,”添加电话列表“); PhoneBookAdapter=新的PhoneBookAdapter(此为PhoneBook列表); Log.v(“,”适配器创建“); list.setAdapter(适配器); Log.v(“,”适配器实现“); list.setOnItemClickListener(新的OnItemClickListener(){ @凌驾 公共视图单击(AdapterView arg0、视图arg1、整型arg2、长型arg3){ //TODO自动生成的方法存根 Toast.makeText(getBaseContext(),“youclciked”,Toast.LENGTH_LONG.show(); } }); } }
为什么祝酒词不能显示?有人能帮我吗 这是我的电话簿适配器烤面包片不显示在麦克利克 package.com.custom; 导入java.util.ArrayList; 导入java.util.List; 导入android.app.Activity; 导入android.content.Intent; 导入android.os.Bundle; 导入android.util.Log; 导入android.view.view; 导入android.widget.AdapterView; 导入android.widget.AdapterView.OnItemClickListener; 导入android.widget.ListView; 导入android.widget.Toast; 公共类MainActivity扩展了活动{ 列表视图列表; /**在首次创建活动时调用*/ @凌驾 创建时的公共void(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.main); Log.v(“,”在创建时”); ListView列表=(ListView)findViewById(R.id.list); ListListOfPhoneBook=new ArrayList(); 添加(新的电话列表(“Sutadi”、“989”、“Jl.Pasar”); 添加(新的电话列表(“Iyand”、“1234455”、“Jl.Mall”); 添加(新的电话列表(“Yanti”、“00000”、“Jl.Sawah”); Log.v(“,”添加电话列表“); PhoneBookAdapter=新的PhoneBookAdapter(此为PhoneBook列表); Log.v(“,”适配器创建“); list.setAdapter(适配器); Log.v(“,”适配器实现“); list.setOnItemClickListener(新的OnItemClickListener(){ @凌驾 公共视图单击(AdapterView arg0、视图arg1、整型arg2、长型arg3){ //TODO自动生成的方法存根 Toast.makeText(getBaseContext(),“youclciked”,Toast.LENGTH_LONG.show(); } }); } },android,Android,为什么祝酒词不能显示?有人能帮我吗 这是我的电话簿适配器 package com.custom; import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.util.Log; import android.view.View; impor
package com.custom;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ListView;
import android.widget.Toast;
public class MainActivity extends Activity {
ListView list;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Log.v("", "on create");
ListView list = (ListView)findViewById(R.id.list);
List<PhoneList> listOfPhonebook = new ArrayList<PhoneList>();
listOfPhonebook.add(new PhoneList("Sutadi","9898989", "Jl.Pasar"));
listOfPhonebook.add(new PhoneList("Iyand","1234455", "Jl.Mall"));
listOfPhonebook.add(new PhoneList("Yanti","00000", "Jl.Sawah"));
Log.v("", "Add phone list");
PhoneBookAdapter adapter = new PhoneBookAdapter(this, listOfPhonebook);
Log.v("", "Adapter create");
list.setAdapter(adapter);
Log.v("", "adapter implement");
list.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
// TODO Auto-generated method stub
Toast.makeText(getBaseContext(), "You clciked ", Toast.LENGTH_LONG).show();
}
});
}
}
package.com.custom;
导入java.util.List;
导入android.content.Context;
导入android.view.LayoutInflater;
导入android.view.view;
导入android.view.ViewGroup;
导入android.widget.BaseAdapter;
导入android.widget.TextView;
公共类PhoneBookAdapter扩展了BaseAdapter{
私人语境;
私人列表电话簿;
公用电话簿适配器(上下文上下文,列表电话簿){
this.context=上下文;
this.listPhonebook=listPhonebook;
}
public int getCount(){
返回listPhonebook.size();
}
公共对象getItem(int位置){
返回listPhonebook.get(位置);
}
公共长getItemId(int位置){
返回位置;
}
公共视图getView(int位置、视图转换视图、视图组视图组){
PhoneList条目=listPhonebook.get(位置);
if(convertView==null){
LayoutFlater充气器=(LayoutFlater)上下文
.getSystemService(上下文布局\充气机\服务);
convertView=充气机充气(R.layout.row,空);
}
TextView tvContact=(TextView)convertView.findViewById(R.id.textstatus);
tvContact.setText(entry.getName());
TextView tvPhone=(TextView)convertView.findViewById(R.id.textkonos);
tvPhone.setText(entry.getPhone());
TextView-tValmat=(TextView)convertView.findViewById(R.id.textalamat);
setText(entry.getAlamat());
返回视图;
}
}
main.xml
package com.custom;
import java.util.List;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
public class PhoneBookAdapter extends BaseAdapter{
private Context context;
private List<PhoneList> listPhonebook;
public PhoneBookAdapter(Context context, List<PhoneList> listPhonebook) {
this.context = context;
this.listPhonebook = listPhonebook;
}
public int getCount() {
return listPhonebook.size();
}
public Object getItem(int position) {
return listPhonebook.get(position);
}
public long getItemId(int position) {
return position;
}
public View getView(int position, View convertView, ViewGroup viewGroup) {
PhoneList entry = listPhonebook.get(position);
if (convertView == null) {
LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = inflater.inflate(R.layout.row, null);
}
TextView tvContact = (TextView) convertView.findViewById(R.id.textstatus);
tvContact.setText(entry.getName());
TextView tvPhone = (TextView) convertView.findViewById(R.id.textkonos);
tvPhone.setText(entry.getPhone());
TextView tvAlamat = (TextView) convertView.findViewById(R.id.textalamat);
tvAlamat.setText(entry.getAlamat());
return convertView;
}
}
row.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Custom"
android:textSize="10pt"
android:paddingBottom="7px"
android:background="#d5d5d5"
android:textColor="#000000"
/>
<ListView
android:paddingLeft="2px"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/list"
></ListView>
</LinearLayout>
首先将断点放在toast上,并确保您在那里得到了呼叫,如果您得到了呼叫但没有显示,请尝试以下操作:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:padding="6dip">
<CheckBox android:text=""
android:layout_width="wrap_content"
android:id="@+id/checkBox1"
android:layout_height="fill_parent"
android:layout_alignParentBottom="true"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"></CheckBox>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textnama"
android:padding="7px"
android:layout_alignParentLeft="true"
android:text="Konos : "/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/textstatus"
android:singleLine="true"
android:padding="7px"
android:layout_below="@+id/textnama"
android:layout_alignParentLeft="true"
android:text="haha"/>
<TextView android:layout_width="wrap_content"
android:text="hohohoho"
android:layout_height="wrap_content"
android:id="@+id/textkonos"
android:paddingRight="3px"
android:padding="7px"
android:layout_above="@+id/textstatus"
android:layout_toRightOf="@+id/textnama"></TextView>
<TextView android:layout_width="wrap_content"
android:text="-"
android:layout_height="wrap_content"
android:id="@+id/text"
android:paddingRight="3px"
android:padding="7px"
android:layout_below="@+id/textkonos"
android:layout_toRightOf="@+id/textstatus"></TextView>
<TextView android:layout_width="wrap_content"
android:text=""
android:layout_height="wrap_content"
android:id="@+id/textalamat"
android:paddingRight="3px"
android:padding="7px"
android:layout_alignParentBottom="true"
android:layout_alignLeft="@+id/textkonos"></TextView>
</RelativeLayout>
可以抑制Toast消息。如果他们是,你会在logcat中看到。您可以通过打开应用程序设置屏幕上的应用程序通知来启用祝酒
为了控制按钮单击事件中的用户界面(如toast消息),您需要使用处理程序的帮助 在类的开头指定处理程序,如下所示
Toast.makeText(getApplicationContext(), "You clicked ", Toast.LENGTH_LONG).show();
在按钮点击事件中,使用处理程序的对象执行Toast命令(如下所示)
list.setOnItemClickListener(新的OnItemClickListener(){
@凌驾
公共视图单击(AdapterView arg0、视图arg1、整型arg2、长型arg3){
objHandler.post(新的Runnable(){
@凌驾
公开募捐{
//TODO自动生成的方法存根
Toast.makeText(getBaseContext(),“youclciked”,Toast.LENGTH_LONG.show();
}
}
});
试试这个
list.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
objHandler.post(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
Toast.makeText(getBaseContext(), "You clciked ", Toast.LENGTH_LONG).show();
}
}
});
首先检查你的onItemClickListener是否工作。如果你的listener不工作,可能你的toast不会显示。调试你的代码以查看主要问题。这是最好的解决方案。我知道,上下文会让开发人员感到毛骨悚然,只需更改:
toast.makeText(getBaseContext(),“你clciked”,Toast.LENGTH_LONG).show();
对于此:Toast.makeText(arg1.getContext(),“您点击了”,Toast.LENGTH_LONG.show();
Voila
Context context = getApplicationContext();
CharSequence text = "Your text here";
int duration = Toast.LENGTH_SHORT;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
这应该行得通
“getApplicationContext()”优于“getBaseContext()”,因为“getApplicationContext()”实际上与应用程序关联,并且在整个生命周期中将保持不变。“getBaseContext()”不应使用,因为它与活动关联,并且在活动被销毁时可能会被销毁。您必须指定调用活动,然后指定上下文
Toast.makeText(getApplicationContext(), "You clciked ", Toast.LENGTH_LONG).show();
使用
getApplicationContext()
而不是getBaseContext
您的ListView clickListener未被调用。原因是复选框可聚焦将取消ListView的可单击功能
简单解决方案:
添加属性:
android:focusable=“true”
到您的复选框xml
Toast.makeText(getActivity().getApplicationContext,“我的Toast”,Toast.LENGTH\u LONG)
您的列表视图应该是可单击和可聚焦的,否则无法调用您的onItemClickListener
您可以在.xml文件中添加可聚焦和可单击的属性,或者在java代码中以编程方式对其进行设置。button=(button)findviewbyd(R.id.buttonoast);
Toast.makeText(getApplicationContext(), "You clciked ", Toast.LENGTH_LONG).show();
按钮
Toast.makeText(getApplicationContext(), "You clciked ", Toast.LENGTH_LONG).show();
Toast.makeText(getApplicationContext(), "You clciked ", Toast.LENGTH_LONG).show();
button = (Button) findViewById(R.id.buttonToast);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
Toast.makeText(getApplicationContext(),
"Button is clicked", Toast.LENGTH_LONG).show();
}
});
button = (Button) findViewById(R.id.buttonToast);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// get your custom_toast.xml ayout
LayoutInflater inflater = getLayoutInflater();
View layout = inflater.inflate(R.layout.custom_toast,
(ViewGroup) findViewById(R.id.custom_toast_layout_id));
// set a dummy image
ImageView image = (ImageView) layout.findViewById(R.id.image);
image.setImageResource(R.drawable.ic_launcher);
// set a message
TextView text = (TextView) layout.findViewById(R.id.text);
text.setText("Button is clicked!");
// Toast...
Toast toast = new Toast(getApplicationContext());
toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
toast.setDuration(Toast.LENGTH_LONG);
toast.setView(layout);
toast.show();
}
});
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/custom_toast_layout_id"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FFF"
android:orientation="horizontal"
android:padding="5dp" >
<ImageView
android:id="@+id/image"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_marginRight="5dp" />
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:textColor="#000" />
</LinearLayout>
[enter image description here][1]