[英]Android - Add Linearlayout above ListView
我想在ListView,
上面添加一個LinearLayout
ListView,
這樣當你滾動屏幕時,它會滾動整個布局。 在我的LinearLayout
,我有一個AChartEngine GraphicalView
,我想在ListView
上面。 我添加了一個ScrollView
,里面有一個Spinner
, LinearLayout
ListView
,但是當我運行應用程序時,只顯示了ListView
和Spinner
。 LinearLayout
未顯示在屏幕上。
這是我的xml文件。 謝謝。
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<Spinner
android:id="@+id/spending_report_cycle_spinner"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<LinearLayout
android:id="@+id/spending_report_graph"
android:layout_width="wrap_content"
android:layou`enter code here`t_height="wrap_content"
android:orientation="vertical"
android:layout_gravity="center_horizontal" />
<ListView
android:id="@+id/spending_report_listview"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
</ListView>
當我調用返回圖形的方法時,我會得到一個View,我需要將其添加到Layout中。 我知道這樣做的唯一方法是將它添加到LinearLayout。
graphLayout = (LinearLayout)view.getViewById(R.id.spending_report_graph);
graph = PieGraph.getNewInstance(getActivity(), items, items.size());
graphLayout.addView(graph);
這是你要實現的嗎?
測試圖像http://imageshack.com/a/img43/3327/f091.png
如果是,那么描述就像是,Item1是微調器,底部的Item 2是ListView,中間的黑線是View,extire布局是線性布局,它有一個子節點(Scroll View),只有滾動視圖的一個直接子項是線性布局。
這是它的xml。 我不確定這是不是你想要的。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" >
<Spinner
android:id="@+id/spending_report_cycle_spinner"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<View
android:id="@+id/spending_report_graph"
android:layout_width="wrap_content"
android:layout_height="3dp"
android:layout_gravity="center_horizontal"
android:background="#000000"
android:orientation="vertical" />
<ListView
android:id="@+id/spending_report_listview"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
</ListView>
</LinearLayout>
</ScrollView>
</LinearLayout>
測試圖像http://imageshack.com/a/img809/7741/ti70.png
這是我使用片段只是為了確認一切正常,是的,一切都很完美。
如你所見,我正在使用的片段,微調器位於頂部,列表視圖位於底部,執行代碼后,視圖如下所示:
測試圖像2 http://imageshack.com/a/img713/685/qpbi.png
這里,兩條綠線內的視圖是片段。 這是一切的代碼:
第一個:yourmainlayout.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<Spinner
android:id="@+id/spending_report_cycle_spinner"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<View
android:id="@+id/SomeView2"
android:layout_width="wrap_content"
android:layout_height="5dp"
android:layout_gravity="center_horizontal"
android:background="#008080"
android:orientation="vertical" />
<fragment
android:id="@+id/fragment_content_1"
android:name="com.mike.passintents.Fragment1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<View
android:id="@+id/SomeView2"
android:layout_width="wrap_content"
android:layout_height="5dp"
android:layout_gravity="center_horizontal"
android:background="#008080"
android:orientation="vertical" />
<ListView
android:id="@+id/spending_report_listview"
android:layout_width="fill_parent"
android:layout_height="300dp"
android:background="#333333" >
</ListView>
</LinearLayout>
</ScrollView>
</LinearLayout>
第二:片段1
import android.os.Bundle;
import android.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.mike.stackoverflowquestions.R;
public class Fragment1 extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_fragment_1, container, false);
}
}
第三:主要活動
import java.util.ArrayList;
import android.app.Activity;
import android.os.Bundle;
import android.app.Fragment;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Spinner;
import android.widget.TextView;
import com.mike.stackoverflowquestions.R;
public class ActivityA extends Activity {
String somevalue1 = "Hello";
String somevalue2 = "World";
ListView mListView;
String[] numbers_text = new String[] { "one", "two", "three", "four",
"five", "six", "seven", "eight", "nine", "ten", "eleven", "twelve",
"thirteen", "fourteen", "fifteen" };
ArrayList<String> mArrayList;
ArrayAdapter<String> mAdapter;
ArrayAdapter<String> spinnerAdapter;
Spinner spinner1;
TextView tV;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.custom_view_stack);
mArrayList = new ArrayList<String>();
for (String s : numbers_text) {
mArrayList.add(s);
}
spinner1 = (Spinner) findViewById(R.id.spending_report_cycle_spinner);
tV = (TextView) findViewById(R.id.tv);
mListView = (ListView) findViewById(R.id.spending_report_listview);
mAdapter = new ArrayAdapter<String>(getApplicationContext(),
android.R.layout.simple_list_item_1, mArrayList);
mListView.setAdapter(mAdapter);
spinnerAdapter = new ArrayAdapter<String>(this, R.layout.spinner_item,
mArrayList);
spinner1.setAdapter(spinnerAdapter);
}
public void selectFragment(View view) {
Fragment fr;
if (view == findViewById(R.id.btnSayHi)) {
fr = new Fragment1();
} else {
fr = new Fragment1();
}
FragmentManager fm = getFragmentManager();
FragmentTransaction mFragmentTransaction = fm.beginTransaction();
mFragmentTransaction.replace(R.id.fragment_content_1, fr);
mFragmentTransaction.commit();
}
}
我做了編輯。 如果有效,請告訴我。 祝好運..:)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.