Articles of android layout

“在Android 4.3上错误地调用了’requestLayout()”错误

我有一个简单的自定义TextView,它在其构造函数中设置自定义字体,如下面的代码 public class MyTextView extends TextView { @Inject CustomTypeface customTypeface; public MyTextView(Context context, AttributeSet attrs) { super(context, attrs); RoboGuice.injectMembers(context, this); setTypeface(customTypeface.getTypeface(context, attrs)); setPaintFlags(getPaintFlags() | Paint.SUBPIXEL_TEXT_FLAG); } } 从Gingerbread到JB 4.2都可以正常工作。 但是当我在Android 4.3手机上显示自定义textview时,adb logcat充斥着以下消息。 10-05 16:09:15.225: WARN/View(9864): requestLayout() improperly called by com.cmp.views.MyTextView{42441b00 V.ED…. ……ID 18,218-456,270 #7f060085 app:id/summary} during layout: running second layout pass 10-05 16:09:15.225: WARN/View(9864): requestLayout() […]

为什么日期选择器会在我的视图中添加日历?

我开始学习如何在Android上开发。 这很简单,但我面临一个问题我没有在任何地方find任何提及…… 我有一个观点: 其中显示了一个日期选择器。 问题是日期选择器似乎除了日期选择器的经典滚轮之外还添加了一个日历(见图)。 我不想要这个观点,为了约会而滚滚而去。 我是以错误的方式使用日期选择器还是这是原始行为? 谢谢 ! 纪尧姆

动态添加视图后WRAP_CONTENT无法正常工作

我正在尝试创建一个动态显示一系列自定义视图的片段。 此布局的主要内容是嵌套在LinearLayout中的RelativeLayout(以水平居中),嵌套在ScrollView中。 RelativeLayout有一些TextView和一个9补丁ImageView,可以通过动态添加的自定义视图进行缩放。 但是,图像(下面的achievement_bgImageView)最终会以屏幕大小结束,即使在我添加了适当数量的自定义视图后,也不会尊重其父RelativeLayout的大小。 当我手动设置achievement_mainLayout的大小(参见下面注释掉的行)时,图像可以很好地缩放,但如果我试图让RelativeLayout的wrap_content处理它自己的大小调整,则什么都不做。 ScrollView IS尊重RelativeLayout的大小,因为所有内容都存在,它只是不伸展以匹配此时内容的imageView。 任何帮助将不胜感激…我的手动计算似乎不足以考虑不同的设备,尽管我考虑到屏幕密度,我手动强迫RelativeLayout到一个恒定的宽度。 值得注意的是,RelativeLayout的测量大小始终等于屏幕的高度,无论其内容的总和是大于还是小于该高度。 所以,从本质上讲,WRAP_CONTENT根本就没有做它应该做的事情。 我没有引用RelativeLayout的任何边缘,所以循环依赖应该不是问题。 fragment_achievements.xml AchievementFragment.java public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View fragmentView = null; fragmentView = inflater.inflate(R.layout.fragment_achievements, container, false); ImageView avatarImageView = (ImageView)fragmentView.findViewById(R.id.achievements_avatarImageView); … // Basic Achievement List Setup RelativeLayout mainLayout = (RelativeLayout)fragmentView.findViewById(R.id.achievements_mainLayout); AchievementRow currentRow = null; List achievementTypeList = CampaignManager.sharedManager().sortedAchievementTypeList(); int achievementCount […]

文字没有椭圆化

我有一个设置为ellipsize的TextView但是当我把文本放入其中时却没有这样做。 有任何想法吗?

更改ProgressDialog的背景

我试图改变ProgressDialog的背景。 我在网上搜索并find了各种建议(比如如何从Dialog中删除边框? ),但我无法替换ProgressDialog的实际背景。 相反,我在对话框后面得到另一个背景(黄色): 我的风格: @drawable/panel_background 启动ProgressDialog的代码: ProgressDialog dialog = new ProgressDialog(this, R.style.StyledDialog); dialog.setTitle(“The title”); dialog.setMessage(“The message.”); dialog.show(); drawable与SDK中包含的9个补丁相同,我只是改为颜色。 我非常感谢一些暗示我做错了什么。

按钮内的保证金

我试图在文本和边框之间的按钮内有一些边距,但我不知道如何指定它们。 我知道的唯一方法是使用android:layout_width =“…”,但这与文本大小无关。 谢谢!

如何使用Android GradientDrawable

我尝试使用GradientDrawable将渐变设置为某些背景和按钮。 可悲的是, 文档不是很详细。 配置渐变的主要属性是什么? 我理解start和endcolor,但其他一些属性可能需要一些解释。 目前我使用图像作为按钮的背景,但是用XML定义的drawable会更好。 我尝试看起来像这样(这是一个非常轻的渐变): alt text http://sofzh.miximages.com/android/Janusz_Leidgens

在编辑文本Android的提示上显示错误

如果用户在edittext中输入空白值,我想显示错误。但我不知道怎么能这样做。这就是我想要的样子: 这是我创建的xml 活动代码 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); emailId = (TextView)findViewById(R.id.emailid); continuebooking = (ImageView)findViewById(R.id.continuebooking); firstName= (EditText)findViewById(R.id.firstName); emailId.setText(“gauravthethinker@gmail.com”); setTittle(); continuebooking.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { if(firstName.getText().toString().trim().equalsIgnoreCase(“”)){ firstName.setError(“Enter FirstName”); } } }); } 因此,如果用户没有输入他的名字,我想显示一个错误,比如你没有输入任何名字的图像。请帮助我,我是android.Thanks的新手

无法转换为颜色:在片段中展开布局时types= 0x2错误但仅在三星Galaxy和注释4

我正在开发一个带有活动的简单应用程序,我使用碎片。一些屏幕上有一些元素。 当我编译并运行应用程序时,它工作正常,除了在三星Galaxy s3和注释4.我没有从堆栈跟踪得到它有什么不对。 01-16 16:25:05.915: E/AndroidRuntime(23174): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.test/com.test.MainActivity}: android.view.InflateException: Binary XML file line #37: Error inflating class com.android.internal.widget.ActionBarView 01-16 16:25:05.915: E/AndroidRuntime(23174): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2292) 01-16 16:25:05.915: E/AndroidRuntime(23174): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2350) 01-16 16:25:05.915: E/AndroidRuntime(23174): at android.app.ActivityThread.access$800(ActivityThread.java:163) 01-16 16:25:05.915: E/AndroidRuntime(23174): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1257) 01-16 16:25:05.915: E/AndroidRuntime(23174): at android.os.Handler.dispatchMessage(Handler.java:102) 01-16 16:25:05.915: E/AndroidRuntime(23174): at android.os.Looper.loop(Looper.java:157) 01-16 16:25:05.915: E/AndroidRuntime(23174): […]

java.lang.NoClassDefFoundError:解析失败:Landroid / support / v4 / animation / AnimatorCompatHelper

将Android Studio更新到2.3版之后。 每次我刷我的ViewPager我都会收到此错误并且应用程序崩溃: 03-23 17:19:19.437 28523-28523/? E/AndroidRuntime: FATAL EXCEPTION: main Process: com.irokotv.plus, PID: 28523 java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v4/animation/AnimatorCompatHelper; at android.support.v7.widget.DefaultItemAnimator.resetAnimation(DefaultItemAnimator.java:515) at android.support.v7.widget.DefaultItemAnimator.animateAdd(DefaultItemAnimator.java:218) at android.support.v7.widget.SimpleItemAnimator.animateAppearance(SimpleItemAnimator.java:114) at android.support.v7.widget.RecyclerView.animateAppearance(RecyclerView.java:3528) at android.support.v7.widget.RecyclerView$4.processAppeared(RecyclerView.java:461) at android.support.v7.widget.ViewInfoStore.process(ViewInfoStore.java:249) at android.support.v7.widget.RecyclerView.dispatchLayoutStep3(RecyclerView.java:3385) at android.support.v7.widget.RecyclerView.dispatchLayout(RecyclerView.java:3135) at android.support.v7.widget.RecyclerView.onLayout(RecyclerView.java:3568) at android.view.View.layout(View.java:18793) at android.view.ViewGroup.layout(ViewGroup.java:5952) at android.support.v4.view.ViewPager.onLayout(ViewPager.java:1766) at android.view.View.layout(View.java:18793) at android.view.ViewGroup.layout(ViewGroup.java:5952) at android.support.design.widget.HeaderScrollingViewBehavior.layoutChild(HeaderScrollingViewBehavior.java:131) at android.support.design.widget.ViewOffsetBehavior.onLayoutChild(ViewOffsetBehavior.java:42) at android.support.design.widget.AppBarLayout$ScrollingViewBehavior.onLayoutChild(AppBarLayout.java:1364) at android.support.design.widget.CoordinatorLayout.onLayout(CoordinatorLayout.java:846) […]