Установить цвет фона с текстом из URL? - PullRequest
0 голосов
/ 03 апреля 2012

Итак, у меня есть действие, которое импортирует список имен из .txt, который находится на веб-сервере.Но как мне установить цвет фона?На странице, которая показывает имена в приложении?Потому что он не использует макет, который я установил?Что такое roster.xml Нужно ли что-то делать с файлом .txt?

Код Roster.class:

package com.frede.iii;

import java.io.BufferedInputStream;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;

import org.apache.http.util.ByteArrayBuffer;

import android.app.Activity;
import android.content.pm.ActivityInfo;
import android.os.Bundle;
import android.view.Window;
import android.widget.ScrollView;
import android.widget.TextView;

public class IIIRoster extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.roster);
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);




//      Scrollview
    ScrollView sv = new ScrollView(this);

    /* We will show the data we read in a TextView. */ 
    TextView tv = new TextView(this); 

    /* Will be filled and displayed later. */ 
    String myString = null; 
    try { 
         /* Define the URL we want to load data from. */ 
        //http://androidtest.host.org/roster.txt
         URL myURL = new URL( 
                   "http://androidtest.host.org/roster.txt"); 
         /* Open a connection to that URL. */ 
         URLConnection ucon = myURL.openConnection(); 

         /* Define InputStreams to read 
          * from the URLConnection. */ 
         InputStream is = ucon.getInputStream(); 
         BufferedInputStream bis = new BufferedInputStream(is); 

         /* Read bytes to the Buffer until 
          * there is nothing more to read(-1). */ 
         ByteArrayBuffer baf = new ByteArrayBuffer(50); 
         int current = 0; 
         while((current = bis.read()) != -1){ 
              baf.append((byte)current); 
         } 

         /* Convert the Bytes read to a String. */ 
         myString = new String(baf.toByteArray()); 
    } catch (Exception e) { 
         /* On any Error we want to display it. */ 
         myString = e.getMessage(); 
    } 
    /* Show the String on the GUI. */ 
    tv.setText(myString); 
//        Adds  textview to scrollview   
        sv.addView(tv);

//          Sets contentview to scrollview    
        this.setContentView(sv); 
    }
}

1 Ответ

2 голосов
/ 03 апреля 2012

Здравствуйте, вы можете просто использовать tv.setBackgroundColor(COLOR.XYX) или sv.setBackgroundColor(COLOR.XYX)

Также в то же время textColor может быть применен к тексту как tv.setTextColor(COLOR.XYX)

Для определения собственных цветов, которые будут использоваться во время выполнения, используйте следующее:

1.В файле string.xml используйте следующий тег

<color name="mycolor">#F5DC49</color>

Теперь в вашем коде.

tv.setTextColor(getResources().getColor(R.color.mycolor))

2. Также мы можем установить значения RGB как:

tv.setTextColor(Color.rgb(170, 00, 00));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...