小编And*_*dre的帖子

TextView android:ellipsize ="marquee"无法按预期工作

我在ListView中有一些自定义元素,每个元素最多只知道一个LinearLayout中的TextView.我希望TextView中的文本是一个单行,当文本太长时水平滚动.我读了很多关于这个的帖子,我想出了一个应该有效的解决方案,但是我没有完整的文本滚动,而是将文本剪切到包含View的长度并以三个点结束.我不想要三个点,但需要滚动整个文本.

这是列表中项目的布局(list_item.xml)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/listItem"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/list_item_selector"
    android:orientation="horizontal"
    android:paddingBottom="7dp"
    android:paddingLeft="15dp"
    android:paddingTop="7dp" >

    <TextView
        android:id="@+id/listText"
        style="@style/Text_View_Style_White"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ellipsize="marquee"
        android:focusableInTouchMode="true"
        android:marqueeRepeatLimit="marquee_forever" 
        android:padding="3dp"

        android:selectAllOnFocus="true"
        android:singleLine="true"
        android:textColor="@drawable/list_item_text_selector" />


</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

我也试过用android:focusable="true",android:scrollHorizontally="true"android:maxLines="1"属性,但他们都不是工作.在getView()适配器的方法(扩展BaseAdapter)中,我setSelected(true)在返回View之前使用TextView上的方法.

我无法弄清楚问题是什么.任何帮助将受到高度赞赏.

android marquee textview

13
推荐指数
3
解决办法
2万
查看次数

Android:ActionBar,TabListener和support.v4.Fragment

我正在构建一个MainActivity扩展的应用程序,FragmentActivity并有一个带有三个选项卡的ActionBar.在每个标签我想附加一个ParentFragment应该控制内部页面之间的滑动.结果应该是按下标签,用户应该从不同的实例ParentFragment和滑动中更改,他应该TextViewFragments在每个内部之间进行更改ParentFragment.
现在我可以在三个选项卡中切换完美,但问题是,ParentFragment没有正确显示,好像它甚至没有创建,因为我甚至不能看到onCreate(),onCreateView()onViewCreated()在logcat的视图功能.
我认为问题在于自定义TabListener类及其功能,但我无法真正理解问题所在.我试图在很多网站上搜索,我已经查看了很多例子,但没有一个与相同的情况有关.
我错过了什么或我在这里做错了什么?

这是我的MainActivity:

    import java.util.Random;
    import android.app.ActionBar;
    import android.app.ActionBar.Tab;
    import android.graphics.drawable.Drawable;
    import android.os.Bundle;
    import android.support.v4.app.Fragment;
    import android.support.v4.app.FragmentActivity;
    import android.support.v4.app.FragmentTransaction;
    import android.support.v4.view.ViewPager;
    import android.view.Gravity;
    import android.view.LayoutInflater;
    import android.view.Menu;
    import android.view.MenuItem;
    import android.view.View;
    import android.view.ViewGroup;
    import android.widget.TextView;
    import android.widget.Toast;
    import com.viewpagerindicator.PageIndicator;

public class MainActivity extends FragmentActivity {

    MyAdapter mAdapter;
    ViewPager mPager;
    PageIndicator mIndicator;    
    private View mCustomView; 
    private static final Random …
Run Code Online (Sandbox Code Playgroud)

android-fragments android-actionbar android-tabs

7
推荐指数
1
解决办法
9578
查看次数

Android:仅在相机预览中旋转叠加按钮

我有一个使用LinearLayout作为主布局的Android应用程序,并通过相机预览填充了SurfaceView。在本文中,我为另一个LinearLayout填充了三个Button和一个自定义TextView。我希望摄像机预览始终保持横向,并且覆盖布局会根据设备的方向进行更改。

我尝试android:screenOrientation="landscape"在活动清单中设置 ,但是(当然)膨胀的布局也始终保持固定,而未设置android:screenOrientation属性时,相机预览也会旋转,从而降低了应用程序的速度,并显示了奇怪的预览形状。这里是布局的相关代码:

private void setupLayout()
{
    setContentView(R.layout.main);
    getWindow().setFormat(PixelFormat.UNKNOWN);

    // Release camera if owned by someone else
    if (camera != null)
        releaseCamera();

    surfaceView = (SurfaceView) findViewById(R.id.camerapreview);
    surfaceHolder = surfaceView.getHolder();
    surfaceHolder.addCallback(this);
    surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);

    controlInflater = LayoutInflater.from(getBaseContext());
    View viewControl = controlInflater.inflate(R.layout.control, null);
    LayoutParams layoutParamsControl = new LayoutParams(
            LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
    this.addContentView(viewControl, layoutParamsControl);


    buttonGetCollectingData = (Button) findViewById(R.id.getcolldata);
    buttonGetCollectingData.setOnClickListener(new Button.OnClickListener()
    {
        public void onClick(View arg0)
        {
            ...
        }
    });

    btnBackHome = (Button) findViewById(R.id.btnBackHome);
    btnBackHome.setOnClickListener(new Button.OnClickListener()
    {
        public void onClick(View arg0)
        {
            ... …
Run Code Online (Sandbox Code Playgroud)

camera android android-orientation

6
推荐指数
1
解决办法
2799
查看次数