-1

这是否有可能TableRow从 XML 布局中获得一些AsyncTask?我只需要获取它的位图。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:id="@+id/APs_layout"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TableLayout
    android:id="@+id/table1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="#fff57200">
    <TableRow
        android:id="@+id/Aps_header_table_Row1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
       <TextView
            android:id="@+id/textView41"
            android:layout_width="220dp"
            android:textSize="18dp"
            android:text="SSID"
            android:textColor="#000000"/>
        <TextView
            android:id="@+id/textView42"
            android:layout_width="70dp"
            android:gravity="center_horizontal"
            android:textSize="18dp"
            android:textColor="#000000"
            android:text="channel"/>
        <!--TextView
            android:id="@+id/textView43"
            android:layout_width="90px"
            android:gravity="center_horizontal"
            android:textSize="18dp"
            android:textColor="#000000"
            android:text="STRENTH"/-->
        <ImageView
            android:id="@+id/imageView1"
            android:layout_height="30px"
            android:layout_width="40dp"
            android:src="@drawable/icon_wifi_bars"/>
        <TextView
            android:id="@+id/textView44"
            android:layout_width="70px"
            android:textSize="18dp"
            android:textColor="#000000"
            android:gravity="right"
            android:text="quality"/>
        <TextView
            android:id="@+id/textView45"
            android:layout_width="75px"
            android:gravity="left"
            android:textSize="18dp"
            android:textColor="#000000"
            android:text="  signal"/>
        <!--TextView
            android:id="@+id/textView46"
            android:layout_width="90px"
            android:gravity="center_horizontal"
            android:textSize="18dp"
            android:textColor="#000000"
            android:text="SECURITY"/-->
        <ImageView
            android:id="@+id/imageView2"
            android:layout_height="30px"
            android:layout_width="30px"
            android:src="@drawable/icon_wifi_lock"/>           
        <TextView
            android:id="@+id/textView47"
            android:layout_width="97px"
            android:gravity="right"
            android:textSize="18dp"
            android:textColor="#000000"
            android:text="mode     "/>
        <!--TextView
            android:id="@+id/textView47"
            android:layout_width="90px"
            android:gravity="center_horizontal"
            android:textSize="18dp"
            android:visibility="gone"
            android:textColor="#000000"
            android:text="band"/-->
        <ImageView
            android:id="@+id/imageView3"
            android:src="@drawable/icon_wifiabgn" 
            android:layout_height="30px"
            android:layout_width="30px"/>
        <TextView
            android:id="@+id/textView47"
            android:layout_width="150px"
            android:gravity="center_horizontal"
            android:textSize="18dp"
            android:textColor="#000000"
            android:text="mac"/>
    </TableRow>
</TableLayout>
<ListView
    android:id="@+id/wifi_networks_list"
    android:layout_width="fill_parent"
    android:fadeScrollbars="false"
    android:layout_height="wrap_content"
    android:layout_above="@id/controls"
    android:layout_below ="@id/table1"
    android:textColor="#000000"
    android:textSize="18dp"
    android:focusable="false"
    android:clickable="false"

    android:drawSelectorOnTop="false" />
<include
    android:id="@+id/controls"
    layout="@layout/buttons_bottom_with_relative" />
</RelativeLayout>

我只需要获取标题的视图(Aps_header_table_Row1)。稍后我将提取它的位图。

4

2 回答 2

1

如果此 XML 尚未作为活动的 contentview 加载(来自 setContentView),则可以使用 layoutInflater 对其进行充气:

RelativeLayout layout = getLayoutInflater().inflate(R.layout.thisXmlFileName);

然后只需通过它的 ID 获取视图:

TextView header = (TextView)layout.findViewById(R.id.Aps_header_table_Row1)
于 2013-06-04T11:50:56.533 回答
1

您可以将上下文的引用传递给 AsyncTask:

public class MyTask extends AsyncTask<?, ? ,?> {
    private Context mContext;

    public MyTask(Context context) {
        mContext = context;
    } 
}

使用这个新的构造函数设置你的 asyncTask:

MyTask task = new MyTask(this);
task.execute(...);

然后您可以访问上下文以从 asynctask 中获取布局充气器:

 LayoutInflater inflater = (LayoutInflater) context.getSystemService( Context.LAYOUT_INFLATER_SERVICE );
于 2013-06-04T13:00:50.207 回答