- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
在 MainActivity
中调用 getDrawable()
时遇到问题,我已经完成了 activity_main.xml
,但它显示此警告“类型资源中的方法 getDrawable(int)
已弃用”。
有人可以帮助我吗?
MainActivity.java
:
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Resources res= getResources();
TabHost tabs = (TabHost) findViewById(android.R.id.tabhost);
tabs.setup();
TabHost.TabSpec spec = tabs.newTabSpec("pestana 1");
spec.setContent(R.id.tab1);
spec.setIndicator("1",res.getDrawable(android.R.drawable.bottom_bar));
tabs.addTab(spec);
tabs.setup();
TabHost.TabSpec spec1 =tabs.newTabSpec("pestana 2");
spec1.setContent(R.id.tab2);
spec.setIndicator("2",res.getDrawable(android.R.drawable.btn_minus));
tabs.addTab(spec1);
tabs.setup();
TabHost.TabSpec spec2 =tabs.newTabSpec("pestana 3");
spec2.setContent(R.id.tab3);
spec.setIndicator("3",res.getDrawable(android.R.drawable.btn_radio));
tabs.addTab(spec2);
}
}
activity_main.xml
:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.tabhost1.MainActivity">
<TabHost
android:id="@android:id/tabhost"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="100dp"></TabWidget>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:id="@+id/tab1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="pestana 1"></TextView>
</LinearLayout>
<LinearLayout
android:id="@+id/tab2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Pesana 2"></TextView>
</LinearLayout>
<LinearLayout
android:id="@+id/tab3"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Pesana 3"></TextView>
</LinearLayout>
</FrameLayout>
</LinearLayout>
</TabHost>
最佳答案
Can anyone help me?
调用getDrawable()
没有任何问题。对于约 99% 的 Android 设备,这是您唯一的选择。
在 Android 5.1 中,他们添加了 a second getDrawable()
method, one that takes a theme as a second parameter 。然后,他们将 getDrawable()
的单参数版本标记为已弃用。
如果您的 minSdkVersion
为 22,请使用 getDrawable()
的两参数版本。
如果您的 minSdkVersion
小于 22,请继续使用单参数版本的 getDrawable()
,并接受弃用通知。
关于java - 使用 getDrawable 配置 TabHost,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30535965/
谁能告诉我使用 getDrawable() 的正确方法,我记得上次我使用它时只有一个参数就好了,但现在我得到了这个方法已弃用的错误,有人吗?波纹管是我正在尝试使用的 fragment private
我对这两个 API 有点困惑。 ResourcesCompat.getDrawable(Resources res, int id, Resources.Theme theme) Return a d
只是好奇——表面上看起来更尴尬,更不容易被发现,但有充分的理由吗? 最佳答案 我认为它是有意混淆了一点,因为大多数时候你不应该直接摆弄可视化树,符合“框架设计指南”“常用类应该遵循基本场景”的理念。
当我想输入数据但我没有在我的代码中使用任何可绘制对象时,我发现了这个错误。而我只是使用一个简单的 EditText 来读取数据。我在这个论坛中提到了许多其他解决方案,但它没有帮助。 Drawable
我是编程新手。我想构建一个可以保存或下载 QR 码的 QR 码生成器。 这是我的生成器代码: public class GeneratorActivity extends AppCompatA
如果我使用 ldpi 设备,是否可以从 res/drawable-xxxdpi 获取图像?也就是说,R.drawable.sunmsg 为我提供了当前 dpi 的图像链接。我不想将资源从 res/dr
private int ServiceLeft; private int ServiceRight; private int Services; final TextView countTextVie
我想将当前图像设置为 Android 设备中的墙纸,并在缩放后将其设置为列表中的 ImageView 。我在做什么: final WallpaperManager wm = WallpaperMana
我根据另一篇文章在 setOnClickListener 中使用它 here 像这样: start.setOnClickListener(new View.OnClickListener() {
由于发布的代码与有关该问题的代码不同,我已经解决了关于此事的最后一个问题,因此我将使用正确的代码重试... 事情是这样的,我一直在使用适用于 Android 的 GoogleMaps API 运行一些
我正在使用 glide 进行 ImageView ,我想从该 ImageView 中获取位图-- ImageView imageView = (ImageView) findViewById(R.id
我有一个加载三个 png 图像的 Activity 。在 hdpi 上,它们分别是 20kb、148kb 和 190kb。这是我加载它们的代码: Drawable bronzePlaque = res
我有一个包含以下代码的 fragment : final MyActivity activity = (MyActivity )getActivity(); 然后稍后: Drawable d = (D
我需要将 edittext 中的字符串转换为位图,但我没有得到字符串,而是得到了这个(见图) 我的代码如下 Canvas c=new Canvas(); MainActivity.edit
我需要访问 ClipDrawable设置剪辑电平。这是可绘制对象: @drawable/left_arrow: @drawable/rotated_square:
我一直在使用 GoogleMaps API 并偶然发现了这个错误,我正在尝试使用 CustomItemizedOverlay 在我的 map 上设置标记...当我尝试从我的项目资源访问我的其中一张图像
所以我今天刚刚发布了一个新的测试版,没有对这段代码进行任何更改。奇怪的是,我在 Crashlytics 上报告了一个以前从未见过的新崩溃。它只发生在来自两个不同制造商的 Android 6 和 7 的
在 MainActivity 中调用 getDrawable() 时遇到问题,我已经完成了 activity_main.xml,但它显示此警告“类型资源中的方法 getDrawable(int) 已弃
我被这个看似简单的问题困住了。我做错了什么? ImageView mImageView; @Override protected void onCreate(Bundle savedI
我在我的项目中使用过这样的 context.getDrawable(): Drawable greenProgressbar = context.getDrawable(R.drawable.cust
我是一名优秀的程序员,十分优秀!