Articles of textview

Android文字样式缺少轻,中,薄,

为textview设置自定义字体时,我只能选择普通,粗体或斜体: 在以下示例中,如何将样式设置为浅而不是粗体?

ScrollView中的Android ListView行未完全显示 – 已剪切

在ScrollView中嵌入ListView时遇到了一个问题,或者至少在我认为问题来自的地方。 ListView元素非常简单: 但是,当我在ScrollView中嵌入这样的元素列表时,在其他一些元素之间,行没有完全显示,如果文本被包装,它们将被剪裁(见下图)。 ListView在ScrollView中实例化如下: 如果ListView的高度设置为“wrap_content”,则仅显示第一个元素。 这就是为什么我使用一种方法来计算列表行的高度: private int getCommentsListHeight() { if (mChatAdapter != null && mChatAdapter.getCount() != 0) { if (mChatList != null) {// && mCommentsListItemHeight == 0) { mCommentsListItemHeight = 0; for (int i = 0; i < mChatAdapter.getCount(); i++) { // Get view item height View viewItem = mChatAdapter .getView(i, new View(OnAirActivity.this), mChatList); […]

Android:在字符串,SpannedStrings和Spannablestrings之间进行转换

我有一个名为“foo”的字符串资源。 它可能是一个简单的字符串……或者它可能包含HTML。 这可能会随着时间的推移而改变:我应该能够在读取它是否为HTML时立即将其设置为至少一个SpannableString( 但是如何? ) 我希望得到原始的CharSequence,并且首先能够按原样显示它(确切的字符,而不是Android的“解释”)。 现在我不能这样做… toString()决定撕掉它不认为我想看到的部分。 然后,我希望能够通过使用某种方法(没有正常的方法工作)通过串联从此和其他字符串或SpannableStrings创建SpannableString。 我想使用SpannableString在TextView中显示HTML格式的文本。 这应该不难,但显然我做得不对(到目前为止我发现的关于此的信息很少)。 当然有一种方法可以在Strings,SpannedStrings甚至Spannablestrings之间准确地进行转换,而不会丢失沿途的标记? 请注意,我已经玩过一些有点破碎的Linkify,但我想要更好地控制这个过程(没有悬空的未格式化的“/”,正确的hrefs等)我可以让这一切都工作如果我依旧保持HTML步骤,虽然我无法连接任何东西。 编辑1:我已经知道我可以使用以下内容来始终确保我得到我的原始字符串(而不是Android决定它认为CharSequence真的是什么)。 很好……现在,如何将它变成一个SpannableString? <![CDATA[ Some bold ]]> 编辑2:不确定为什么这不能提前工作,但是……如果foo1和foo2是上面标记的字符串(如CDATA),那么显然可以这样做: String foo1 = (String)getResources().getText(R.string.foo1); String foo2 = (String)getResources().getText(R.string.foo2); SpannedString bar = new SpannedString(Html.fromHtml(foo1+foo2)); 好奇:有没有比这更简单的解决方案? 这个CDATA业务真的有必要吗? 这似乎是错综复杂的(但不像从未完全知道资源types将是什么一样复杂……字符串,跨越等)

如何更改Java代码中的TextView值?

我正在研究一个android程序。 用户单击按钮我做了一些数学运算,我想在一些TextView对象中更改我在视图上的值。 有人可以告诉我如何在我的代码中执行此操作吗?

屏幕中央的TextView

可能重复: 如何在Android中的TextView中水平和垂直居中文本? 我有一个RelativeLayout (在它是一个LinerLayout之前),占据了所有的屏幕,我想放在这个Layout的中心,一个TextView 。 我试着用gravity = “center” layout_gravity = “center”和其他几个来做,但它不起作用。 有谁知道如何将TextView置于屏幕中间? 编辑 好吧,我想我解释得很糟糕。 我认为TextView位于中心,但我想要的中心是TextView的文本。 我可以这样做吗?

自定义字体TextView的性能问题

我有一个自定义TextView,具有个性化的字体属性: public class TextViewPlus extends TextView { private static final String TAG = “TextViewPlus”; public TextViewPlus(Context context) { super(context); } public TextViewPlus(Context context, AttributeSet attrs) { // This is called all the time I scroll my ListView // and it make it very slow. super(context, attrs); setCustomFont(context, attrs); } public TextViewPlus(Context context, AttributeSet attrs, int […]

在焦点上更改可点击的TextView的颜色并单击?

我有一个可点击的TextView,我想给它一些颜色。 但我不知道怎么做。 以下是我正在使用的两个文件中的相关代码片段: TextView title = new TextView(this); title.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)); title.setTextColor(R.color.textcolor); title.setText(titleLine); title.setTypeface(null, Typeface.BOLD); title.setClickable(true); title.setId(idLine); title.setFocusable(true); title.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { /* Irrelevant code */ } }); 这是我的textcolor.xml文件: 当我通过键入title.setTextColor(R.color.textcolor)使用textcolor文件时; ,无论我是否按下它,文字颜色都会变成灰色。 这很奇怪,因为我在所有颜色字段中都写了“#000000”。 但是如果我删除了setTextColor代码,则将textView变为浅灰色,当我按下它时,它变为黑色。 但那不是我想要的颜色。 那么,任何人都可以帮我解决这个问题吗? 只是为了澄清:我希望能够在文本正常,按下和聚焦时指定文本的颜色。

Android – 将TextView设置为粗体不起作用

这是XML: 尽管图形布局显示粗体文本,但设备上却没有。 它是设备还是什么? 更新: 对于那些不断要求完整XML的人来说,这里会更新。 一个简单的相对布局。 这是Java代码: this.titleTextView.setText(this.modalListState.title); 需要考虑的事项:可能是因为设备字体? 有没有人有Galaxy S3确认? 这可能是活动风格吗? 这是用于整个应用程序的一个: @android:color/transparent @null true @android:style/Animation true @null false TransparentActivity样式用于相关活动。

android:TextView的LayoutParams使视图以编程方式消失

我从不同的角度来看这个。 基本上要点是: 我已经在XML中为一个以编程方式运行NEEDS的接口布局了一个模板,因此它将在运行期间动态填充。 这里的问题是XML TextView有很多布局调整(有效)并且是必要的。 但是如果我实际上在代码中设置它们,TextView甚至都不显示。 (顺便说一下,TextView嵌套在TableRow中,因此调用了权重。)我首先设计的XML模板,用作代码的参考是这样的,它工作得很好: 就像我说的那样,完美地展现出来。 当我在代码中运行相同的布局,并应用LayoutParams时,TextView消失。 这是相关的片段: int textViewExampleID = 9001; private TextView txtviewExample = new TextView(this); private void buildTextView(){ LayoutParams paramsExample = new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT,1.0f); txtviewExample.setId(textViewExampleID); txtviewExample.setBackgroundResource(R.drawable.textview_9patch_white); txtviewExample.setGravity(Gravity.CENTER); txtviewExample.setTextColor(getResources().getColor(android.R.color.black)); paramsExample.setMargins(20, 20, 20, 20); txtviewExample.setPadding(20, 20, 20, 20); txtviewExample.setTextSize(40); txtviewExample.setText(“customExample”); //if I comment out the following line, this TextView displays. //if I leave […]

以编程方式使用省略号创建TextView

我是以编程方式创建一个TextView,我想在最后省略省略号。 伪代码: tv.setEllipsize(TextUtils.TruncateAt.END); tv.setHorizontallyScrolling(false); tv.setSingleLine(); 以上工作很棒。 tv.setEllipsize(TextUtils.TruncateAt.END); tv.setHorizontallyScrolling(false); tv.setMaxLines(1); 这不起作用。 这是一个错误吗? 我不明白为什么我在指定maxLines时最终无法将文本转换为省略号,尤其是maxLine为1但是setSingleLine没问题。