Questions tagged «android-view»

有关Android中的视图的问题。视图可以用Android Layout XML或Java代码定义。使用此标签的问题涉及View的常规做法或建议。关于特定视图,请参阅此标签的信息。有关布局的问题,请使用[android-layout]标签。


7
Android基础知识:在UI线程中运行代码
从在UI线程中运行代码的角度来看,两者之间是否有任何区别: MainActivity.this.runOnUiThread(new Runnable() { public void run() { Log.d("UI thread", "I am the UI thread"); } }); 要么 MainActivity.this.myView.post(new Runnable() { public void run() { Log.d("UI thread", "I am the UI thread"); } }); 和 private class BackgroundTask extends AsyncTask<String, Void, Bitmap> { protected void onPostExecute(Bitmap result) { Log.d("UI thread", …


24
有没有一种简单的方法可以在Android View的顶部和底部添加边框?
我有一个TextView,我想沿其顶部和底部边框添加黑色边框。我尝试将android:drawableTop和添加android:drawableBottom到TextView中,但这只会导致整个视图变黑。 <TextView android:background="@android:color/green" android:layout_width="fill_parent" android:layout_height="wrap_content" android:drawableTop="@android:color/black" android:drawableBottom="@android:color/black" android:text="la la la" /> 有没有一种方法可以在Android中轻松地向视图(尤其是TextView)添加上下边框?


18
是否有RecyclerView的addHeaderView等效项?
我正在寻找等效于addHeaderView的回收者视图。基本上,我想将带有2个按钮的图像作为标题添加到列表视图。有没有其他方法可以将标题视图添加到回收者视图?一个指导的例子会有所帮助 编辑2(添加的片段布局): 添加日志语句后,似乎getViewType仅收到位置0。这导致onCreateView仅加载一个布局: 10-26 16:32:53.766 5449-5449/co.testapp I/logger info﹕ Adapter-> getItemCount: 5 10-26 16:32:53.766 5449-5449/co.testapp I/logger info﹕ Adapter-> getItemCount: 5 10-26 16:32:53.766 5449-5449/co.testapp I/logger info﹕ Adapter-> getItemCount: 5 10-26 16:32:53.766 5449-5449/co.testapp I/logger info﹕ Adapter-> getItemCount: 5 10-26 16:32:53.766 5449-5449/co.testapp I/logger info﹕ Adapter-> getItemCount: 5 10-26 16:32:53.766 5449-5449/co.testapp I/logger info﹕ Adapter-> getItemCount: …

28
带有Material Design和AppCompat的Android中的着色按钮
在AppCompat今天更新发布之前,我可以更改Android L中按钮的颜色,但不能更改旧版本上的按钮的颜色。包括新的AppCompat更新后,我无法更改任何一个版本的颜色,但是当我尝试尝试该按钮时,该按钮便消失了。有人知道如何更改按钮的颜色吗? 下图显示了我想要实现的目标: 白色按钮是默认按钮,红色按钮是我想要的按钮。 这是我之前所做的更改styles.xml:中按钮颜色的操作 <item name="android:colorButtonNormal">insert color here</item> 并动态地执行此操作: button.getBackground().setColorFilter(getResources().getColor(insert color here), PorterDuff.Mode.MULTIPLY); 我也确实将主题父级从更改@android:style/Theme.Material.Light.DarkActionBar为Theme.AppCompat.Light.DarkActionBar

29
findViewByID返回null
首先:是的,我阅读了有关该主题的所有其他主题。不仅是这个网站上的网站...(您看到的,我有些沮丧) 它们中的大多数都带有建议,android:id而不是仅id在XML文件中使用。是的 我从其他人那里了解到,该方法与的View.findViewById工作原理有所不同Activity.findViewById。我也处理了。 在我的中location_layout.xml,我使用: <FrameLayout .... > <some.package.MyCustomView ... /> <LinearLayout ... > <TextView ... android:id="@+id/txtLat" /> ... </LinearLayout> </FrameLayout> 在我的活动中,我这样做: ... setContentView( R.layout.location_layout ); 在我的自定义视图类中: ... TextView tv = (TextView) findViewById( R.id.txtLat ); 返回null。这样做,我的活动效果很好。所以也许是由于Activity.findViewById和的View.findViewById差异。因此,我将传递给上下文的上下文存储在本地的海关视图构造函数中并尝试: ... TextView tv = (TextView) ((Activity) context).findViewById( R.id.txtLat ); 这也回来了null。 然后,我改变了我的自定义视图扩展ViewGroup,而不是View和改变location_layout.xml让TextView我的自定义视图的直接子,从而使View.findViewById应该工作的设想。惊喜:它什么都没解决。 那么,我到底在做什么错呢? 我将不胜感激。

9
如何以编程方式在RelativeLayout中布置视图?
我正在尝试以编程方式(而不是通过XML声明性地)实现以下目标: <RelativeLayout...> <TextView ... android:id="@+id/label1" /> <TextView ... android:id="@+id/label2" android:layout_below: "@id/label1" /> </RelativeLayout> 换句话说,如何使第二个TextView出现在第一个下面,但是我想在代码中这样做: RelativeLayout layout = new RelativeLayout(this); TextView label1 = new TextView(this); TextView label2 = new TextView(this); ... layout.addView(label1); layout.addView(label2); setContentView(layout); 更新: 谢谢,TreeUK。我了解总体方向,但仍然无法正常工作-“ B”与“ A”重叠。我究竟做错了什么? RelativeLayout layout = new RelativeLayout(this); TextView tv1 = new TextView(this); tv1.setText("A"); TextView tv2 …



7
如何从视图获取托管活动?
我有一个Activity带有3的EditTexts和一个自定义视图,该视图充当专用键盘向EditTexts 添加信息。 目前,我正在将传递给Activity视图,以便可以获取当前焦点对准的编辑文本并通过自定义键盘更新内容。 有没有一种方法可以引用父活动并获得当前的焦点EditText而不将活动传递到视图中?


5
attrs.xml中用于自定义视图的同名属性
我正在写一些共享一些同名属性的自定义视图。在它们各自的<declare-styleable>部分中,attrs.xml我想对属性使用相同的名称: <?xml version="1.0" encoding="utf-8"?> <resources> <declare-styleable name="MyView1"> <attr name="myattr1" format="string" /> <attr name="myattr2" format="dimension" /> ... </declare-styleable> <declare-styleable name="MyView2"> <attr name="myattr1" format="string" /> <attr name="myattr2" format="dimension" /> ... </declare-styleable> </resources> 我在说一个错误myattr1并且myattr2已经定义了。我发现我应该省略和中的format属性,但是如果这样做,我会在控制台中收到以下错误:myattr1myattr2MyView2 [2010-12-13 23:53:11 - MyProject] ERROR: In <declare-styleable> MyView2, unable to find attribute 有什么办法可以做到这一点,也许是某种命名空间(只是猜测)?

7
我可以将View pager与视图一起使用吗(不能与片段一起使用)
我ViewPager用于在之间滑动Fragments,但是我ViewPager可以在Views简单的XML布局之间滑动吗? 这是我Adapter的ViewPager 页面,用于在片段之间滑动: import java.util.List; import com.app.name.fragments.TipsFragment; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; import android.support.v4.app.FragmentTransaction; import android.view.ViewGroup; public class PageAdapter extends FragmentPagerAdapter { /** * */ List<Fragment> fragments; public PageAdapter(FragmentManager fm,List<Fragment> frags) { super(fm); fragments = frags; } @Override public Fragment getItem(int arg0) { // TODO Auto-generated method stub return …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.