现在,我将每个xml布局文件存储在res/layout
文件夹中,因此管理小项目是可行且简单的,但是当存在大型和重型项目的情况时,则应该存在层次结构和子文件夹布局文件夹.
例如
layout
-- layout_personal
-- personal_detail.xml
-- personal_other.xml
--layout_address
-- address1.xml
-- address2.xml
Run Code Online (Sandbox Code Playgroud)
以同样的方式,我们希望有大型应用程序的子文件夹,所以有没有办法在android项目中这样做?
我可以在布局文件夹中创建layout-personal和layout_address子文件夹,但是当使用R.layout ._______访问xml布局文件的时候,当时内部没有任何xml布局弹出窗口.菜单.
在我的应用程序中,我想要发生两件事.
当我触摸并拖动ImageButton时,它应该随我的手指移动.
我用OnTouchListener()
它,它工作正常.
当我单击ImageButton时,它应该关闭活动.
我用OnClickListener()
它,它也工作正常.
所以,这是我的问题.无论什么时候我移动了ImageButton
OnTouchListener
tirggered和ImageButton
移动,OnClickListener
当我从移动中释放按钮时,也会在结束时触发.
如何在同一个按钮上使用ontouch和onclick监听器而不会相互干扰?
ExpandableListView有一个setOnChildClickListener方法,但缺少setOnChild Long ClickListener方法.
当我添加setOnLongClickListener()
了子视图时getChildView()
,整个子列表变得完全无法点击(尽管parentView.setOnChildClickListener()
存在并且之前正在工作).
如何在子视图上启用长按?
你如何创建setError()
(类似于a TextView/EditText
)函数Spinner
?以下不起作用:
我尝试在构造函数中扩展Spinner类:
ArrayAdapter<String> aa = new ArrayAdapter<String>(getContext(),
android.R.layout.simple_spinner_item, android.R.id.text1,
items);
aa.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
setAdapter(aa);
tv = (TextView) findViewById(android.R.id.text1);
// types_layout_list_tv
ctv = (CheckedTextView) aa.getDropDownView(1, null, null);
tv2 = (TextView) aa.getView(1, null, null);
Run Code Online (Sandbox Code Playgroud)
setError
方法:
public void setError(String str) {
if (tv != null)
tv.setError(str);
if(tv2!=null)
tv2.setError(str);
if (ctv != null)
ctv.setError(str);
}
Run Code Online (Sandbox Code Playgroud) 我是新来的Android,我真的需要做这种方式(我认为是另一个这样做Activity
),但任何人都可以告诉我一个简单的代码(只是onCreate()
可以做法)Listview
没有ListActivity
?
谢谢
OnTouch
一个ImageView
我开始淡出动画:
myImageView.setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
v.startAnimation(fadeInAnimation);
Run Code Online (Sandbox Code Playgroud)
我知道需要一个动画监听器才能找到动画完成的时间,但是如何附加它以便我可以获得动画刚刚完成的视图...我想在动画后设置视图的可见性已经完成了.
谢谢
我想知道的性能和效率,SparseArray
以及ArrayList
和哪一个是更好地使用.我无法理解何时使用SparseArray
和什么时候ArrayList
?
扩展Android ViewGroup类时,onLayout()
覆盖的目的是什么?我在Android中进行自定义控件但由于某种原因,内容(子View
对象)没有显示.我的方法是扩展ViewGroup类,通过addView()
ViewGroup 的方法添加子视图.然后,在我的主要活动中,我有以下代码:
ChannelController myCC = new ChannelController(this);
setContentView(myCC);
Run Code Online (Sandbox Code Playgroud)
ChannelController是我的自定义类的名称,它扩展了ViewGroup.我必须做错事,因为屏幕上没有显示任何内容.
我知道我必须覆盖并实现onLayout()方法,但是用什么?我知道在dev.android网站上有一整页专门用于此,但它对我没有多大帮助,主要是因为我认为我是新手.任何见解将不胜感激.
作为参考,我的ViewGroup扩展如下所示:
public class ChannelController extends ViewGroup {
final String TAG = "JAL";
public ChannelController(Context c)
{
super(c);
init(c);
}
public ChannelController(Context c, AttributeSet attibset)
{
super(c);
init(c);
}
public ChannelController(Context c, AttributeSet attribset, int defStyle)
{
super(c);
init(c);
}
public void init(Context c)
{
//RelativeLayout wrap = new RelativeLayout(c);
RelativeLayout.LayoutParams wrapLP = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.MATCH_PARENT,
RelativeLayout.LayoutParams.WRAP_CONTENT);
RelativeLayout r1 = new RelativeLayout(c);
RelativeLayout.LayoutParams r1LP …
Run Code Online (Sandbox Code Playgroud) 我需要有一个ViewPager
内部a ScrollView
但是ViewPager
当它进入时不会出现ScrollView
,当我不使用时一切都好ScrollView
.
我已经在stackoverflow或其他网站上看到过这样的问题,所有这些问题都得到了解答,你必须把它们放到android:fillViewport="true"
你的滚动视图来修复问题,但是这个解决方案对我来说ViewPager
不起作用,仍然没有出现即使我有android:fillViewport="true"
我的ScrollView
.
我想在android api中有些东西发生了变化,这个解决方案不再适用了,有没有人知道我怎么可能ViewPager
出现在一个ScrollView
?
更新:一个有效的ScrollView布局XML:
<ScrollView
android:id="@+id/scrollView1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fillViewport="true">
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<android.support.v4.view.ViewPager
android:id="@+id/itemsViewPager2"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
</android.support.v4.view.ViewPager>
</LinearLayout>
</ScrollView>
Run Code Online (Sandbox Code Playgroud) 希望是一个简单的.V4.0.3
我有一个ListView
想要留下10dip的左右边距.内容很简单,但我希望分隔线的左右边距也是10dip.
如果我添加android:PaddingRight
或android:layout_marginRight
到ListView
或LinearLayout
其中包含的ListView那么这个工作,当然,但你滚动列表出现倒右手边的列表滚动条也由填充/保证金距离入伙.
我希望滚动条指示器保持不变.我已经尝试了所有的android:scrollbarStyle
设置.