你是Android的新手如何以编程方式为另一个xml文件设置文本背景颜色我已经使用set content view添加xml文件但它只有listview而且我有另一个xml文件使用模块执行文件,我想要到modelo xml文件中的文本背景
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main1);
EXECUTAR = (Button) findViewById(R.id.btn_buscar);
ValorBusca = (EditText) findViewById(R.id.txt_buscar);
Lista = (ListView) findViewById(R.id.listView1);
ValorBusca.setText("");
EXECUTAR.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
QuerySQL(null);
}
});
}
public void QuerySQL(String COMANDOSQL) {
ResultSet rs;
try {
Statement statement = ma.connect.createStatement();
rs = statement.executeQuery("SELECT * FROM "+ValorBusca.getText().toString()+"");
List<Map<String, String>> data = null;
data = new ArrayList<Map<String, String>>();
while(rs.next()) {
Map<String, String> datanum =new HashMap<String, String>();
datanum.put("A",rs.getString(1));
datanum.put("B",rs.getString(2));
datanum.put("c",rs.getString(3));
data.add(datanum);
}
String[] from = {"A","B","c"};
int[] views = {R.id.txttitulo,R.id.txtconteudo,R.id.textview3};
AD = new SimpleAdapter(this, data, R.layout.modelo, from, views);
Lista.setAdapter(AD);
} catch (Exception e) {
Log.e("ERRO",e.getMessage());
Toast.makeText(getBaseContext(),"Enter Table Name",Toast.LENGTH_SHORT).show();
}
}
我希望在此文件模式中使用文本背景
<TableLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:stretchColumns="0,1,2"
>
<TableRow
android:id="@+id/tableRow1"
android:layout_width="2dip"
android:scrollbarAlwaysDrawHorizontalTrack="true"
android:layout_height="wrap_content">
<TextView
android:id="@+id/txttitulo"
android:text="Name"
android:layout_height="wrap_content"
android:layout_width="2dip"
android:gravity="left"
android:background="@drawable/cell_shape"
android:padding="5dip"
android:layout_marginLeft="3dp"
android:textColor="#0174DF"/>
<TextView
android:id="@+id/txtconteudo"
android:text="Number"
android:layout_height="wrap_content"
android:layout_width="2dip"
android:gravity="left"
android:textColor="#0174DF"
android:background="@drawable/cell_shape"
android:padding="5dip"
/>
<TextView
android:id="@+id/textview3"
android:text="Number"
android:layout_height="wrap_content"
android:layout_width="2dip"
android:gravity="right"
android:layout_weight="1"
android:textColor="#0174DF"
android:background="@drawable/cell_shape"
android:padding="5dip"
android:layout_marginRight="3dp"/>
</TableRow>
答案 0 :(得分:8)
检查一下,
TextView textView = (TextView) findViewById(R.id.text1);
textView.setText("Welcome");
textView.setTextColor(Color.WHITE);
textView.setBackgroundColor(Color.RED);
答案 1 :(得分:3)
这可能会帮助你。
textview.setBackgroundResource(R.color.white);
注意:而不是 textview ,您需要编写 TextView对象名称。
答案 2 :(得分:2)
试试这种方式。只需覆盖适配器的getView()
方法即可。并从那里改变颜色。
AD = new SimpleAdapter(this, data, R.layout.modelo, from, views){
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
if (v == null) {
LayoutInflater vi = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.modelo, null);
}
TextView text1 = (TextView) v.findViewById(R.id.txttitulo);
TextView text2 = (TextView) v.findViewById(R.id.txtconteudo);
TextView text3 = (TextView) v.findViewById(R.id.textview3);
text1.setTextColor(Color.GREEN);
text2.setTextColor(Color.GREEN);
text3.setTextColor(Color.GREEN);
return super.getView(position, v, parent);
}
};
我希望这会对你有所帮助。
答案 3 :(得分:0)
试试这个
View v=findViewById(R.layout.modelo);
TextView tv=(TextView)v.findViewById(R.id.txttitulo);
tv.setBackgroundColor(Color.RED);
答案 4 :(得分:0)
对于Kotlin;
全球定义文字视图:
lateinit var option1: TextView
在onCreate()方法中初始化
option1 = findViewById(R.id.option1)
通过color.xml设置背景颜色
option1.setBackgroundResource(R.color.colorBlue)