我在Android 程序的xml文件中加载的自定义ImageView控件中如何访问Activity中的其他控件的句柄 ?

自定义ImageView控件通过响应用户的滑动事件dispatchTouchEvent实现一个类似转盘的功能,我需要根据转盘旋转的角度去动态的刷新,xml中的其他控件的值... 自定义ImageView控件 通过响应用户的滑动事件
dispatchTouchEvent 实现一个类似转盘的功能,我需要根据转盘旋转的角度去动态的刷新,xml中的其他控件的值,例如TextView控件
mTextView01 显示的数字 ,不知道在如何
自定义ImageView控件的事件处理函数中如何获取TextView的句柄 ?我直接用
findViewById函数返回为NULL :

public class TalkRoundSpinView extends ImageView
{
....

@Override
public boolean dispatchTouchEvent(MotionEvent event) {
switch (action) {

mTextView01 = (TextView) findViewById(R.id.textView01);
mTextView01.setText(R.string.s_Num1);
}
展开
 我来答
雪天见景
2012-07-03
知道答主
回答量:6
采纳率:0%
帮助的人:2.8万
展开全部
用着个试试:
mTextView01 = (TextView)TalkRoundSpinView.this.findViewById(R.id.textView01);
自己想办法传进来一个Activity或Context
View view = View.inflate(context或Activity, R.layout.***, null);再
mTextView01 = (TextView)view.findViewById(R.id.textView01);
嘴多脸脸子甜
2012-07-03 · TA获得超过220个赞
知道小有建树答主
回答量:138
采纳率:0%
帮助的人:122万
展开全部
方法一:
1、自定义ImageView添加成员变量Activity activity;
2、添加构造器
public TalkRoundSpinView(Activity a){
super((Context)a);
this.activity = a;
}
使用activity.findViewById(R.id.textView01);获取TextView实例。
方法二:
将TextView在Activity中获取实例,将TextView以参数的形式传入自定义ImageView
追问
怎么调用
TalkRoundSpinView(Activity a)
的构造函数并将Activity 参数传入 TalkRoundSpinView类中 ? 我是在
TalkModeActivity中通过
setContentView(R.layout.talkmode_main);初始化自定义VIEW的,默认调用

public TalkRoundSpinView(Context context, AttributeSet attrs) {
super(context, attrs);

}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
缤纷多彩号
2012-07-03 · 超过13用户采纳过TA的回答
知道答主
回答量:61
采纳率:0%
帮助的人:43.7万
展开全部
LayoutInflater inflater = LayoutInflater.from(context);
layout = inflater.inflate(R.layout.scale_view, null);
//可以用这个方法R.layout.scale_view这个是你控件的xml文件然后
button01 = (ImageButton) layout.findViewById(R.id.button01);
更多追问追答
追问
这样确实可以获取控件的ID了,不过为什么不能刷新对应的TextView的显示 ?        
dispatchTouchEvent() {
LayoutInflater inflater = LayoutInflater.from(context1);
layout = inflater.inflate(R.layout.talkmode_main, null);
m_Textview = (TextView) layout.findViewById(R.id.textView01);
m_Textview.setText("aaaaaaaa");
invalidate();}
追答
能不能把你的代码发给我看一下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式