在代码中创建Textview的文本剪切

时间:2014-02-21 07:13:42

标签: android string textview

我正在创建一个应用程序,它接受一个字符串并将其分成单词并重新打印它们,同时检查单词前面是否有“#”。如果有'#',则该单词的颜色会发生变化。我遇到的问题是如果原始字符串太长,String会被删除。 有什么帮助吗?

public class MainActivity extends Activity {
    String[] parts; 
    LinearLayout.LayoutParams layoutParams ;
    int size;
    LinearLayout L;
    String s ="This is the test String that is divided #Testing ";
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        L=(LinearLayout)findViewById(R.id.ll);

        layoutParams= new  LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,  LinearLayout.LayoutParams.WRAP_CONTENT);

        parts = s.split(" ");
        size = parts.length;

        for(int i=0; i<size;i++)
        {
            TextView valueTV = new TextView(this);
            String d= parts[i] + " ";
            valueTV.setText(d);
            //   valueTV.setLayoutParams(layoutParams);

            if(d.charAt(0)=='#') 
            {
                valueTV.setTextColor(Color.CYAN);
            }
            L.addView(valueTV,layoutParams);
        }

    }

}

1 个答案:

答案 0 :(得分:0)

这是因为你有线性布局 它需要水平方向。

它会在您的手机边缘显示文字视图,之后您的数据将无法显示。

如果textView的宽度超出显示宽度,您需要检查设备显示宽度并手动添加另一个布局。

请参阅此link

它可以帮助您解决问题。