实现动态旋转控件

顾小林 2012-12-11 02:00:45
网上好多资料都是 通过属性来旋转

我现在是想做一个 根据OrientationEventListener 这个监听来动态的改变 控件的方向

我想通过 findViewById 获取控件

然后在 那个监听类中的onOrientationChanged 方法中
用 setOrientation 的方法 动态的改变 该控件的方向

我想要控件重绘一个 但是没有搞好

有没有能提供一个思路的

android 2.3.5
...全文
377 22 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
vencent_dai 2012-12-17
  • 打赏
  • 举报
回复
引用 20 楼 shen332401890 的回复:
引用 14 楼 coder_dai 的回复:嗯可以的,有个方法是让被动画处理的控件停在最后一帧。 setFillAfter(boolean b)这个方法,参数给true就ok了。 !写在动画方法后。 成功了 ,但是我想问 为什么我在XML中定义的却没有效果呢?
嗯,成功就好。你的问题。能说具体点么?在xml里定义setFillAfter么?还是别的什么?
顾小林 2012-12-17
  • 打赏
  • 举报
回复
引用 16 楼 btyh17mxy 的回复:
咦~前几天有个公司找我做一个项目,他就要求做这么个东西.后来价格没谈妥就没有然后了.
还有一个项目 就要求 这么个东西?
顾小林 2012-12-17
  • 打赏
  • 举报
回复
引用 16 楼 btyh17mxy 的回复:
咦~前几天有个公司找我做一个项目,他就要求做这么个东西.后来价格没谈妥就没有然后了.
你放心 我肯定不是那个 公司的
顾小林 2012-12-17
  • 打赏
  • 举报
回复
引用 19 楼 btyh17mxy 的回复:
引用 18 楼 shen332401890 的回复:引用 16 楼 btyh17mxy 的回复:咦~前几天有个公司找我做一个项目,他就要求做这么个东西.后来价格没谈妥就没有然后了. 还有一个项目 就要求 这么个东西? 是一个电子白板的东西,当时还做了个小Demo,不过没有实现旋转的功能
了解了 谢谢
顾小林 2012-12-17
  • 打赏
  • 举报
回复
引用 14 楼 coder_dai 的回复:
嗯可以的,有个方法是让被动画处理的控件停在最后一帧。 setFillAfter(boolean b)这个方法,参数给true就ok了。 !写在动画方法后。
成功了 ,但是我想问 为什么我在XML中定义的却没有效果呢?
牟蘑菇 2012-12-17
  • 打赏
  • 举报
回复
引用 18 楼 shen332401890 的回复:
引用 16 楼 btyh17mxy 的回复:咦~前几天有个公司找我做一个项目,他就要求做这么个东西.后来价格没谈妥就没有然后了. 还有一个项目 就要求 这么个东西?
是一个电子白板的东西,当时还做了个小Demo,不过没有实现旋转的功能
牟蘑菇 2012-12-16
  • 打赏
  • 举报
回复
咦~前几天有个公司找我做一个项目,他就要求做这么个东西.后来价格没谈妥就没有然后了.
sada09 2012-12-14
  • 打赏
  • 举报
回复
引用 8 楼 shen332401890 的回复:
引用 5 楼 sada09 的回复:引用 4 楼 shen332401890 的回复:引用 3 楼 Dylan465 的回复:同意楼上,不过旋转起来不好实现点击事件,特别是矩形的,不妨试试Matrix的mapPoints,我也在研究之中 调用 ondraw 又有 问题 1 刷新问题 2 效果很不理想啊 你试过了么?刷新是应该问题不大仅仅只是在set时ondraw, ……
在set时候的方法调用 public void setOrientation(boolean orientation) { Orientation = orientation; invalidate(); } 我测试时旋转不卡,至于变形的话,没有明白。 旋转180°用下 mMatrix.setRotate(180, centerX, centerY); 其中旋转中心为center.其他的你继续研究一下
顾小林 2012-12-14
  • 打赏
  • 举报
回复
引用 14 楼 coder_dai 的回复:
嗯可以的,有个方法是让被动画处理的控件停在最后一帧。 setFillAfter(boolean b)这个方法,参数给true就ok了。 !写在动画方法后。
谢谢 明天试试看
vencent_dai 2012-12-14
  • 打赏
  • 举报
回复
嗯可以的,有个方法是让被动画处理的控件停在最后一帧。 setFillAfter(boolean b)这个方法,参数给true就ok了。 !写在动画方法后。
顾小林 2012-12-14
  • 打赏
  • 举报
回复
引用 12 楼 coder_dai 的回复:
为什么要重绘那么麻烦。 不是有animation么,通过更改控件坐标,就可以实现旋转了,而且可以旋转任意角度。
旋转完了你要停在那里啊 动画能停在某个地方吗?
vencent_dai 2012-12-14
  • 打赏
  • 举报
回复
为什么要重绘那么麻烦。 不是有animation么,通过更改控件坐标,就可以实现旋转了,而且可以旋转任意角度。
顾小林 2012-12-14
  • 打赏
  • 举报
回复
引用 9 楼 sada09 的回复:
引用 8 楼 shen332401890 的回复:引用 5 楼 sada09 的回复:引用 4 楼 shen332401890 的回复:引用 3 楼 Dylan465 的回复:同意楼上,不过旋转起来不好实现点击事件,特别是矩形的,不妨试试Matrix的mapPoints,我也在研究之中 调用 ondraw 又有 问题 1 刷新问题 2 效果很不理想啊 你试过了么?刷……
好的谢谢
天蓝dylan 2012-12-12
  • 打赏
  • 举报
回复
引用 4 楼 shen332401890 的回复:
引用 3 楼 Dylan465 的回复:同意楼上,不过旋转起来不好实现点击事件,特别是矩形的,不妨试试Matrix的mapPoints,我也在研究之中 调用 ondraw 又有 问题 1 刷新问题 2 效果很不理想啊
如果不是在onThouch事件刷新可以创建Handler,用线程控制旋转角度,然后发送消息让UI线程进行invalidate
sada09 2012-12-12
  • 打赏
  • 举报
回复
引用 4 楼 shen332401890 的回复:
引用 3 楼 Dylan465 的回复:同意楼上,不过旋转起来不好实现点击事件,特别是矩形的,不妨试试Matrix的mapPoints,我也在研究之中 调用 ondraw 又有 问题 1 刷新问题 2 效果很不理想啊
你试过了么?刷新是应该问题不大仅仅只是在set时ondraw, 效果很不理想是指你试过之后的效果么?
顾小林 2012-12-12
  • 打赏
  • 举报
回复
引用 3 楼 Dylan465 的回复:
同意楼上,不过旋转起来不好实现点击事件,特别是矩形的,不妨试试Matrix的mapPoints,我也在研究之中
调用 ondraw 又有 问题 1 刷新问题 2 效果很不理想啊
顾小林 2012-12-12
  • 打赏
  • 举报
回复
引用 5 楼 sada09 的回复:
引用 4 楼 shen332401890 的回复:引用 3 楼 Dylan465 的回复:同意楼上,不过旋转起来不好实现点击事件,特别是矩形的,不妨试试Matrix的mapPoints,我也在研究之中 调用 ondraw 又有 问题 1 刷新问题 2 效果很不理想啊 你试过了么?刷新是应该问题不大仅仅只是在set时ondraw, 效果很不理想是指你试过之后的效果么?……
我继承一个 button 刷新以后 就出现不全的状况 控件 刷新 也缓慢 就是点控件后 不立即刷新
顾小林 2012-12-12
  • 打赏
  • 举报
回复
引用 6 楼 Dylan465 的回复:
引用 4 楼 shen332401890 的回复:引用 3 楼 Dylan465 的回复:同意楼上,不过旋转起来不好实现点击事件,特别是矩形的,不妨试试Matrix的mapPoints,我也在研究之中 调用 ondraw 又有 问题 1 刷新问题 2 效果很不理想啊 如果不是在onThouch事件刷新可以创建Handler,用线程控制旋转角度,然后发送消息让UI……
好的我尝试一下
天蓝dylan 2012-12-11
  • 打赏
  • 举报
回复
同意楼上,不过旋转起来不好实现点击事件,特别是矩形的,不妨试试Matrix的mapPoints,我也在研究之中
顾小林 2012-12-11
  • 打赏
  • 举报
回复
引用 1 楼 sada09 的回复:
简单说就是:继承View类,并在OnDraw()方法中实现旋转。
你的意思 是 在 set 方法中 调用 OnDraw?
加载更多回复(1)

80,471

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧