编辑:发布完整的代码(除了XML,因为它是一堆荒谬的表格格式!)
请忽略与我的问题无关的代码!我现在正在提供功能.我稍后会清理它.
大家好!第一个应用和第一个问题.我在这里研究了一段时间,通常会找到我的答案,但我有一个可能非常明显的BUGger.我有一个imagebutton似乎没有调用指定的方法.
我的imagebutton的XML:
<Imagebutton androID:background="@null" androID:onClick="click" androID:layout_wIDth="wrap_content" androID:layout_height="wrap_content" androID:ID="@+ID/imagebutton1" androID:src="@drawable/stats" androID:layout_gravity="center_vertical"></Imagebutton>
我的代码:
package com.talismancs;import androID.app.Activity;import androID.content.Intent;import androID.graphics.drawable.Drawable;import androID.os.Bundle;import androID.vIEw.VIEw;import androID.Widget.ImageVIEw;import androID.Widget.TextVIEw;public class sheet extends Activity{ private String selection; private String pick;/** Called when the activity is first created. */@OverrIDepublic voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVIEw(R.layout.sheet); Bundle extras = getIntent().getExtras(); if(extras !=null) { // Get extra from .main and remove spaces String pick = extras.getString(selection); pick = pick.replace(" ", ""); //Convert extra from string to int as ID and make image int imageResource = getResources().getIDentifIEr(pick, "drawable", getPackagename()); ImageVIEw iv = (ImageVIEw) findVIEwByID(R.ID.imageVIEw1); final Drawable image = getResources().getDrawable(imageResource); iv.setimageDrawable(image); // Populate tv's from string TextVIEw tv1 = (TextVIEw) findVIEwByID(R.ID.textVIEw4); TextVIEw tv2 = (TextVIEw) findVIEwByID(R.ID.textVIEw5); TextVIEw tv3 = (TextVIEw) findVIEwByID(R.ID.textVIEw6); TextVIEw tv4 = (TextVIEw) findVIEwByID(R.ID.textVIEw7); TextVIEw tv5 = (TextVIEw) findVIEwByID(R.ID.textVIEw8); int arrayresource = getResources().getIDentifIEr(pick, "array", getPackagename()); String[] CharString = getResources().getStringArray(arrayresource); tv1.setText(CharString[0]); tv2.setText(CharString[1]); tv3.setText(CharString[2]); tv4.setText(CharString[3]); tv5.setText(CharString[4]); } }public voID onClick(VIEw vIEw) { Intent i = new Intent(sheet.this, stats.class); i.putExtra(pick, pick); startActivity(i);}
}
好像很简单吧?当我点击imagebutton时,它什么都没做!
请帮忙.
编辑:LOGCAT选择一个微调器项目后,我们可以访问此活动.sheet
> 03-16 06:15:38.977:> INFO/ActivityManager(563): displayed> activity com.talismancs/.sheet: 766 ms> 03-16 06:15:42.907:> DEBUG/dalvikvm(1735): GC freed 448> objects / 39160 bytes in 58ms 03-16> 06:15:43.847:> INFO/NotificationService(563):> enqueuetoast pkg=com.talismancs> callback=androID.app.ITransIEntNotification$Stub$Proxy@43773720> duration=1 03-16 06:15:43.877:> INFO/ActivityManager(563): Starting> activity: Intent {> comp={com.talismancs/com.talismancs.sheet} (has extras) } 03-16 06:15:43.917:> WARN/inputManagerService(563): Window> already focused, ignoring focus gain> of:> com.androID.internal.vIEw.IinputMethodClIEnt$Stub$Proxy@43718320> 03-16 06:15:44.527:> INFO/ActivityManager(563): displayed> activity com.talismancs/.sheet: 646 ms
之后,当我点击imagebutton时什么也没做
解决方法:
你的代码错了.你没有使用ClickListener分配你的按钮.
请参阅此示例代码以了解如何实现它.
public class ExampleActivity extends Activity implements OnClickListener { protected voID onCreate(Bundle savedValues) { ... button button = (button)findVIEwByID(R.ID.corky); button.setonClickListener(this); } // Implement the OnClickListener callback public voID onClick(VIEw v) { // do something when the button is clicked } ...}
您可以访问此link以获取更多参考.
总结以上是内存溢出为你收集整理的android imageButton onClick方法没有调用全部内容,希望文章能够帮你解决android imageButton onClick方法没有调用所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)