1
layout.xml:スクロール位置
<ListView
android:id="@+id/lv"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:stackFromBottom="true"
android:transcriptMode="alwaysScroll" />
フラグメントコード:
public class MediumFragment extends Fragment {
ListView lv;
private int tabNumber = 1;
private DatabaseReference mDatabaseReference;
ArrayList<MissionClass> missionList;
EasyMediumHardArrayAdapter adapter;
private static String TAG = "MediumFragment";
private int positionNum;
private String idNum;
boolean checkingId = false;
int firstCompletelyVisiblePos;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Set the layout that you want to display
View v = inflater.inflate(R.layout.fragment_medium, container, false);
lv = (ListView) v.findViewById(R.id.lv);
missionList = new ArrayList<MissionClass>();
lv.setSelection(0);
adapter = new EasyMediumHardArrayAdapter(getActivity(), R.layout.list_item_easy_medium_hard, missionList);
lv.setAdapter(adapter);
//initializing database reference
mDatabaseReference = FirebaseDatabase.getInstance().getReference();
// Retrieve and display data in listview
retrieveData();
// Check number of available mission
checkUnlockMission();
// To perform onclick event handler
lvListener();
return v;
}
private void retrieveData() {
// Retrieve the id 7 - 12 datas from Mission table
mDatabaseReference.child("Mission").orderByKey().startAt("7").endAt("12").addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot snapshot) {
for (DataSnapshot child : snapshot.getChildren()) {
missionList.add(child.getValue(MissionClass.class));
}
adapter.notifyDataSetChanged();
}
@Override
public void onCancelled(DatabaseError databaseError) {
Log.e(TAG, databaseError.getMessage());
}
});
}
stackFromBottom =「true」が、私はアプリケーションを起動したときにスクロール位置が下であることを可能。 stackFromBottom = "true"とスクロール位置を先頭にする(リストビュー位置= 0)が必要です。私はそれを行う方法を知っていてもいいですか?私はlv.smoothscrolltoposition()を試しましたが、それは助けになりません。
コメントは議論の対象外です。この会話は[チャットに移動]されています(http://chat.stackoverflow.com/rooms/139094/discussion-on-answer-by-user123-scroll-position-to-be-on-top-in-listview) 。 –