The method setBackgroundDrawable(Drawable) from the type View is deprecated求解

yicanday5 2013-05-22 03:35:00
代码如下
package com.example.helloandroid;

import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.ImageButton;

public class MainActivity extends Activity {

private ImageButton Ibtn;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Ibtn = (ImageButton)findViewById(R.id.imageBtn);
Ibtn.setOnTouchListener(new OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event){
if(event.getAction() == MotionEvent.ACTION_DOWN){
Ibtn.setBackgroundDrawable(getResources().getDrawable(R.drawable.press));
}
else if(event.getAction() == MotionEvent.ACTION_UP){
Ibtn.setBackgroundDrawable(getResources().getDrawable(R.drawable.nopress));
}
return false;
}
});
}
}



其中setBackgroundDrawable函数中间打了一条横线,不能被用,为什么?
...全文
9682 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
御驾-亲征 2014-03-07
  • 打赏
  • 举报
回复
setBackgroundResource setBackgroundResource
泰迪T-Bag 2013-12-19
  • 打赏
  • 举报
回复
你手机还没有支持API16
xiaoyu5585 2013-09-19
  • 打赏
  • 举报
回复
在API16以后此函数已经被放弃,请使用setBackground代替。你可以好好看看提示,有时候提示是非常有用的。
倦旅 2013-08-23
  • 打赏
  • 举报
回复
机器的版本太低了把 把不支持setbackground这个函数
yicanday5 2013-06-08
  • 打赏
  • 举报
回复
引用 5 楼 majaw 的回复:
[quote=引用 3 楼 yicanday5 的回复:] 我找到问题了,是最低版本太低,可是我改为16后程序虽然是没有问题了,但是在手机上运行的时候出了问题,显示遇到“很抱歉,xxxx已经停止运行”这是什么节奏,谁能帮我解答
看异常的詳細日志啊[/quote]自己一个人学的欢,还没学会看日志、、、
majaw 2013-05-23
  • 打赏
  • 举报
回复
引用 3 楼 yicanday5 的回复:
我找到问题了,是最低版本太低,可是我改为16后程序虽然是没有问题了,但是在手机上运行的时候出了问题,显示遇到“很抱歉,xxxx已经停止运行”这是什么节奏,谁能帮我解答
看异常的詳細日志啊
yicanday5 2013-05-22
  • 打赏
  • 举报
回复
程序的problems窗口也没任何问题,速度来大神解答,谢谢了
yicanday5 2013-05-22
  • 打赏
  • 举报
回复
我找到问题了,是最低版本太低,可是我改为16后程序虽然是没有问题了,但是在手机上运行的时候出了问题,显示遇到“很抱歉,xxxx已经停止运行”这是什么节奏,谁能帮我解答
yicanday5 2013-05-22
  • 打赏
  • 举报
回复
引用 1 楼 majaw 的回复:
use setBackground(Drawable) instead, 换setBackground方法啊 打横线的解释 过时的方法,本来应该废气,但是为了兼容以前的版本,或者照顾到一些老的用户,还是保留了下来。 仍可以使用,最好用替代的函数setBackground来使用
还是不对,显示错误Call requires API level 16 (current min is 8): android.widget.ImageButton#setBackground你看看什么情况
majaw 2013-05-22
  • 打赏
  • 举报
回复
use setBackground(Drawable) instead, 换setBackground方法啊 打横线的解释 过时的方法,本来应该废气,但是为了兼容以前的版本,或者照顾到一些老的用户,还是保留了下来。 仍可以使用,最好用替代的函数setBackground来使用

80,471

社区成员

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

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