changed support lib to v13. added tabs and fragments to start conversation activity

This commit is contained in:
iNPUTmice 2014-07-02 16:13:25 +02:00
parent 9260ed4047
commit 502a1bdb9c
7 changed files with 97 additions and 2 deletions

View File

@ -48,6 +48,12 @@
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="eu.siacs.conversations.ui.StartConversation"
android:label="@string/title_activity_start_conversation"
android:parentActivityName="eu.siacs.conversations.ui.ConversationActivity"
android:logo="@drawable/ic_activity"
></activity>
<activity
android:name="eu.siacs.conversations.ui.SettingsActivity"
android:label="@string/title_activity_settings"

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.view.ViewPager xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/start_conversation_view_pager"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</android.support.v4.view.ViewPager>

View File

@ -21,6 +21,7 @@
<string name="title_activity_contact_details">Contact Details</string>
<string name="title_activity_conversations">Conversations</string>
<string name="title_activity_sharewith">Share with Conversation</string>
<string name="title_activity_start_conversation">Start Conversation</string>
<string name="just_now">just now</string>
<string name="minute_ago">1 min ago</string>
<string name="minutes_ago">%d mins ago</string>
@ -254,4 +255,5 @@
<string name="otr_fingerprint">OTR fingerprint</string>
<string name="verify">Verify</string>
<string name="decrypt">Decrypt</string>
</resources>
<string name="conferences">Conferences</string>
</resources>

View File

@ -488,7 +488,7 @@ public class ConversationActivity extends XmppActivity {
attachFilePopup.show();
break;
case R.id.action_add:
startActivity(new Intent(this, ContactsActivity.class));
startActivity(new Intent(this, StartConversation.class));
break;
case R.id.action_archive:
this.endConversation(getSelectedConversation());

View File

@ -1,7 +1,87 @@
package eu.siacs.conversations.ui;
import android.app.ActionBar;
import android.app.ActionBar.Tab;
import android.app.ActionBar.TabListener;
import android.app.Fragment;
import android.app.FragmentTransaction;
import android.app.ListFragment;
import android.os.Bundle;
import android.support.v13.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import eu.siacs.conversations.R;
public class StartConversation extends XmppActivity {
private Tab mContactsTab;
private Tab mConferencesTab;
private ViewPager mViewPager;
private ListFragment mContactsListFragment = new ListFragment();
private ListFragment mConferenceListFragment = new ListFragment();
private TabListener mTabListener = new TabListener() {
@Override
public void onTabUnselected(Tab tab, FragmentTransaction ft) {
// TODO Auto-generated method stub
}
@Override
public void onTabSelected(Tab tab, FragmentTransaction ft) {
mViewPager.setCurrentItem(tab.getPosition());
}
@Override
public void onTabReselected(Tab tab, FragmentTransaction ft) {
// TODO Auto-generated method stub
}
};
private ViewPager.SimpleOnPageChangeListener mOnPageChangeListener = new ViewPager.SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int position) {
getActionBar().setSelectedNavigationItem(position);
}
};
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_start_conversation);
mViewPager = (ViewPager) findViewById(R.id.start_conversation_view_pager);
ActionBar actionBar = getActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
mContactsTab = actionBar.newTab().setText(R.string.contacts)
.setTabListener(mTabListener);
mConferencesTab = actionBar.newTab().setText(R.string.conferences)
.setTabListener(mTabListener);
actionBar.addTab(mContactsTab);
actionBar.addTab(mConferencesTab);
mViewPager.setOnPageChangeListener(mOnPageChangeListener);
mViewPager.setAdapter(new FragmentPagerAdapter(getFragmentManager()) {
@Override
public int getCount() {
return 2;
}
@Override
public Fragment getItem(int position) {
if (position==0) {
return mContactsListFragment;
} else {
return mConferenceListFragment;
}
}
});
}
@Override
void onBackendConnected() {
// TODO Auto-generated method stub