下記の構成で、画面のデザインを構成しています。
xml
1<?xml version="1.0" encoding="utf-8"?> 2<RelativeLayout 3 <ScrollView 4 <LinearLayout 5 <LinearLayout 6 <TextViewなど 7 . 8 . 9 . 10 </LinearLayout> 11 <LinearLayout 12 <packagename.ExpandableHeightGridView 13 </LinearLayout> 14 </LinearLayout> 15 </ScrollView> 16</RelativeLayout>
実行して端末で確認するとGridViewが下図のように全面に表示されてしまいます。
LinearLayoutの部分は上にスクロールすれば下図のように表示されます。
対策として、下記のようにJava側でScrollviewの位置を調整しましたが、
最初にGridViewが全面に表示された後に、位置が調整されてしまいます。
java
1public class Activity_CommunicationSpace_MemberList extends Activity { 2 3 private List<Data_User> objects = new ArrayList<Data_User>(); 4 private Data_User item = new Data_User(); 5 private String user_name; 6 private Bitmap user_icon; 7 private Bitmap user_profile; 8 9 @Override 10 public void onCreate(Bundle savedInstanceState) { 11 super.onCreate(savedInstanceState); 12 setContentView(R.layout.activity_communicationspace_memberlist); 13 14 user_name = "Test_Test"; 15 user_icon = BitmapFactory.decodeResource(getResources(), R.drawable.icon_lamborghini); 16 17 for (int i = 0; i < 60; i++) { 18 item = new Data_User(); 19 item.setNameData(user_name); 20 item.setIconData(user_icon); 21 objects.add(item); 22 } 23 24 Adapter_CommunicationSpace_MemberList adapter = new Adapter_CommunicationSpace_MemberList(getApplicationContext(), R.layout.adapter_communicationspace_memberlist, objects); 25 ExpandableHeightGridView expandableHeightGridView = (ExpandableHeightGridView) findViewById(R.id.gridview_communicationspace_memberlist); 26 expandableHeightGridView.setExpanded(true); 27 expandableHeightGridView.setAdapter(adapter); 28 29 final ScrollView scrollView = (ScrollView) findViewById(R.id.activity_communicationspace_memberlist_scrollView); 30 scrollView.post(new Runnable() { 31 public void run() { 32 scrollView.fullScroll(ScrollView.FOCUS_UP); 33 } 34 }); 35 } 36}
何か解決策がございましたら、ご教授ください。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/01/25 00:15