Articles of 布局

当文本在两行时button改变位置

嗨,我有这个简单的布局 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <Button android:id="@+id/btn_trigger_left" style="@style/triggerButton" android:layout_marginRight="5dip" android:text="Mold" /> <Button android:id="@+id/btn_trigger_right" style="@style/triggerButton" android:text="Fums" /> </LinearLayout> 风格在这里。 <style name="triggerButton"> <item name="android:layout_width">0dp</item> <item name="android:layout_height">50dip</item> <item name="android:textSize">12sp</item> <item name="android:gravity">center</item> <item name="android:textStyle">bold</item> <item name="android:textColor">@color/white</item> <item name="android:layout_weight">2</item> <item name="android:background">@drawable/symptom_bg</item> <item name="android:layout_marginBottom">0dip</item> </style> 而且是这样的。 这是可以的,但是当我的文本足够长的两行button像这样下来。 当我做错了,请帮助我吗? 谢谢!

ListView标题忽略layout_height

我膨胀这个视图,并将其添加到我的ListView作为标题。 我想把它做成500dp高(硬编码,为了这个例子) <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:background="@drawable/repeat_background" android:layout_height="500dp"> <ImageView android:id="@+id/filter_menu" android:src="@drawable/ic_sort" android:layout_gravity="center_vertical" android:padding="8dp" android:layout_weight="0" android:layout_width="wrap_content" android:layout_height="wrap_content" android:onClick="showPopup"/> </LinearLayout> ListView不尊重它的标题的作者,并将其封装在其内容上。 任何人都可以解释发生了什么?

Android:以编程方式设置Weight参数与我想要的相反

我有一个与Android的问题。 我在Java中设置Weight参数,但它正在做我想要的反正。 这是代码 LinearLayout container = new LinearLayout(context); // some code … container.setWeightSum(1f); View v1 = new View(context); v1.setBackgroundColor(Color.parseColor("#ff0000")); LinearLayout.LayoutParams p1 = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,LinearLayout.LayoutParams.WRAP_CONTENT); p1.weight=0.1f; View v2 = new View(context); v2.setBackgroundColor(Color.parseColor("#000000")); LinearLayout.LayoutParams p2 = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,LinearLayout.LayoutParams.WRAP_CONTENT); p2.weight=0.9f; container.addView(v1,p1); container.addView(v2,p2); 我重复这个过程7次,在容器布局之间添加一条黑线。 通常情况下,我应该得到一个红色的小栏和一个大的黑色的,但这是我得到这个代码: 为什么它的代码完全相反? 谢谢你们的帮助

RecyclerView多个布局视图在一个适配器类中

这是我所取得的成就? 3个不同的部分 ,每个部分10个不同的项目 。 这里是我下面的教程 链接 ,下面是屏幕截图 : 试图为每个部分显示different Views 。 喜欢: 对于第1部分 (layout_1.xml) 对于第2部分 (layout_2.xml) 对于第3节 (layout_3.xml) 但是在每个Section中 显示 layout_1.xml布局视图 …(第1,2,3节) 我可以知道我在代码中的错误,我错过了什么? public class SectionListDataAdapter extends RecyclerView.Adapter<SectionListDataAdapter.SingleItemRowHolder> { private ArrayList<SingleItemModel> itemsList; private Context mContext; public SectionListDataAdapter(Context context, ArrayList<SingleItemModel> itemsList) { this.itemsList = itemsList; this.mContext = context; } @Override public SingleItemRowHolder onCreateViewHolder(ViewGroup viewGroup, int i) […]

在代码中设置textview的边距和重力是行不通的

如果我只为我的textview设置保证金,那是在线性布局内,一切正常。 如果我只为我的textview设置重力,它的工作原理。 但是,如果我设置这两个属性(重力和边距),重力仍然留有边缘设置成功。 我的代码设置这两个属性不能按预期方式工作: tv2=new TextView(this); tv2.setText("Text"); LinearLayout.LayoutParams para=new LinearLayout.LayoutParams( LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT ); para.setMargins(0, 10, 0, 10); //left,top,right, bottom tv2.setLayoutParams(para); tv2.setGravity(android.view.Gravity.CENTER_HORIZONTAL); 我必须在代码中构build我的布局,不能使用xml文件。

Android布局土地不能正常工作

我一直在看stackoverflow的问题,我已经尝试了所有我见过的,但布局土地不工作。 在我的代码,我有和onConfigurationChanged的方法 @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); } 和清单文件: <activity android:name="com.sde.PlayerTrack" android:theme="@style/AppTheme" android:configChanges="orientation|keyboardHidden|screenSize" > </activity> 我也尝试删除Android清单条目:configChanges,然后布局土地加载,但我有组件(TextView,滚动条…)无法正常工作。 你能帮我吗?

java.lang.NullPointerException:尝试调用空对象引用的虚拟方法'int android.view.ViewGroup.getPaddingLeft()'

我试图使用一个意图来启动一个活动,但提到的错误发生在第二个活动的setContentView(); 这里是我的代码和布局文件。 itemactivity.xml: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="match_parent" android:layout_width="match_parent" android:orientation="vertical"> </LinearLayout> 主要活动: Intent i=new Intent(MainActivity.this,ItemActivity.class); startActivity(i); ItemActivity: @Override protected void onCreate(Bundle savedInstanceState) { setContentView(R.layout.itemactivity); // this is where error occurs super.onCreate(savedInstanceState); } 这里是完整的错误日志: java.lang.RuntimeException: Unable to start activity ComponentInfo{bertaberim.team.beertaberim/bertaberim.team.beertaberim.ItemActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.view.ViewGroup.getPaddingLeft()' on a null object reference 11-04 23:01:20.621 […]

如何在TableLayout中创build三列

我正在开发一个使用TableLayout的屏幕。 在这里我可以轻松创build两列。 但我怎样才能创build三列?

Android覆盖外部/之间的布局边界

我必须添加一个覆盖图(ImageView),以便它稍微移动到包含的布局左边界的左侧。 做这个的最好方式是什么? 尝试了一些简单的事情,比如把ImageView放在布局里面,并使用负边距 android:layout_marginLeft="-20dip" 这使得这个: (更正:图像中的文字应该是20dip而不是20px) AbsoluteLayout已被弃用。 有没有像z顺序的东西? 或者我该怎么做? 提前致谢。 编辑:我尝试使用相对布局。 同样的效果。 这里的XML降到最低: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:clipChildren="false" android:paddingLeft="50dip" > <ImageView android:id="@+id/myId" android:layout_width="60dip" android:layout_height="60dip" android:layout_marginLeft="-30dip" android:clipChildren="false" android:src="@drawable/pic" /> </RelativeLayout> 结果 当包含的布局具有小于屏幕的背景图像而不是填充时也会发生。

如何创build一个没有“setContentView(R.layout.main)”的活动

我知道它可能通过做像下面的代码创build活动,其中视图不是从XML文件设置,但是像这样:setContentView(new myView(this)); 我不明白的是如何使用这段代码,但仍然有能力定制它,例如,如果我想添加一个button的代码波纹pipe,我将如何做,因为我不能简单地添加一个XML布局可以吗? 任何好的答复,这将非常感谢提前非常多! package com.faceapp; import android.app.Activity; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.graphics.PointF; import android.media.FaceDetector; import android.media.FaceDetector.Face; import android.os.Bundle; import android.view.View; public class FaceappActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //setContentView(R.layout.main); setContentView(new myView(this)); […]