Added link content type

This commit is contained in:
Vladislav Khorev 2014-11-25 02:03:46 +00:00
parent 3258788e16
commit 322a651dd6
20 changed files with 244 additions and 43 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.5 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 794 B

After

Width:  |  Height:  |  Size: 828 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 41 KiB

View File

@ -0,0 +1,39 @@
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/bkg1"
android:gravity="center_horizontal"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="fishrungames.bashgid.LinkContentFragment" >
<TextView
android:id="@+id/titleTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="24sp" />
<ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:contentDescription="@string/related_image" />
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:text="TextView" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/go_to_website" />
</LinearLayout>

View File

@ -2,6 +2,7 @@
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@drawable/background"
android:orientation="vertical" android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingLeft="@dimen/activity_horizontal_margin"

View File

@ -44,4 +44,6 @@
<string name="drawer_settings">Настройки</string> <string name="drawer_settings">Настройки</string>
<string name="go_to_website">Перейти на сайт</string>
</resources> </resources>

View File

@ -38,6 +38,7 @@
<string name="drawer_for_investor">投资者信息</string> <string name="drawer_for_investor">投资者信息</string>
<string name="drawer_settings">设置</string> <string name="drawer_settings">设置</string>
<string name="go_to_website">去现场</string>
</resources> </resources>

View File

@ -45,5 +45,7 @@
<string name="drawer_settings">Settings</string> <string name="drawer_settings">Settings</string>
<string name="go_to_website">Go to website</string>
</resources> </resources>

View File

@ -0,0 +1,74 @@
package fishrungames.bashgid;
import fishrungames.bashgid.core.LinkContentStorage;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
public class LinkContentFragment extends Fragment {
String [] titleArray = {
"Предприятия Башкортостана", "Статистика", "Помощь инвестору", "Транспорт",
};
public int contentId = 0;
View rootView;
TextView titleTextView;
ImageView imageView;
TextView textView;
Button button;
public LinkContentFragment(int contentId)
{
this.contentId = contentId;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
rootView = inflater.inflate(R.layout.fragment_link_content_page, container, false);
titleTextView = (TextView) rootView.findViewById(R.id.titleTextView);
imageView = (ImageView) rootView.findViewById(R.id.imageView);
textView = (TextView) rootView.findViewById(R.id.textView);
button = (Button) rootView.findViewById(R.id.button);
titleTextView.setText(LinkContentStorage.titleArray[contentId]);
imageView.setImageResource(LinkContentStorage.imgIdArray[contentId]);
textView.setText(LinkContentStorage.textArray[contentId]);
button.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
Uri uri = Uri.parse(LinkContentStorage.webLinkArray[contentId]);
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
}
});
return rootView;
}
@Override
public void onResume()
{
super.onResume();
}
}

View File

@ -25,6 +25,9 @@ public class MainActivity extends ActionBarActivity implements NavigationDrawerF
public static final String TAG_FROM_NEWSLISTFRAGMENT_TO_NEWSRECORDFRAGMENT = "TAG_FROM_NEWSLISTFRAGMENT_TO_NEWSRECORDFRAGMENT"; public static final String TAG_FROM_NEWSLISTFRAGMENT_TO_NEWSRECORDFRAGMENT = "TAG_FROM_NEWSLISTFRAGMENT_TO_NEWSRECORDFRAGMENT";
public static final String TAG_FROM_SEARCHFRAGMENT_TO_NEWSRECORDFRAGMENT = "TAG_FROM_SEARCHFRAGMENT_TO_NEWSRECORDFRAGMENT"; public static final String TAG_FROM_SEARCHFRAGMENT_TO_NEWSRECORDFRAGMENT = "TAG_FROM_SEARCHFRAGMENT_TO_NEWSRECORDFRAGMENT";
public static final String TAG_TO_SEARCHFRAGMENT = "SearchFragment"; public static final String TAG_TO_SEARCHFRAGMENT = "SearchFragment";
public static final String TAG_TO_MAINFRAGMENT = "MainFragment";
@ -147,6 +150,16 @@ public class MainActivity extends ActionBarActivity implements NavigationDrawerF
mNavigationDrawerFragment.EnableDrawer(); mNavigationDrawerFragment.EnableDrawer();
} }
public void OpenLinkContentScreen(int contentId)
{
getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container, new LinkContentFragment(contentId), TAG_TO_MAINFRAGMENT).commit();
mNavigationDrawerFragment.EnableDrawer();
}
public void OpenNewsRecordScreen(NewsRecord newsRecord, String tag) public void OpenNewsRecordScreen(NewsRecord newsRecord, String tag)
{ {
// Xperimental -- addToBackStack provoke error "Class not found". Need // Xperimental -- addToBackStack provoke error "Class not found". Need
@ -265,6 +278,15 @@ public class MainActivity extends ActionBarActivity implements NavigationDrawerF
return; return;
} }
if (getSupportFragmentManager().findFragmentByTag(TAG_TO_MAINFRAGMENT) != null)
{
OpenMainScreen();
return;
}
super.onBackPressed(); super.onBackPressed();
/* /*

View File

@ -26,24 +26,14 @@ public class MainPageFragment extends Fragment implements NewsUpdatedCallbackInt
String [] teaserHeaderArray = { "Для инвестора", "Культура Башкортостана", "Для гостей и туристов", "Образование" }; String [] teaserHeaderArray = { "Для инвестора", "Культура Башкортостана", "Для гостей и туристов", "Образование" };
String [] investorGroupTitleArray = { "Предприятия Башкортостана", "Статистика", "Помощь инвестору", "Транспорт" }; int[] investorGroupContentIdArray = { 1, 2, 3, 4 };
String [] investorGroupSubtitleArray = { "Обзор", "Все об экономике Башкортостана", "Программа помощи инвесторам", "Обзор транспортной инфраструктуры" };
int[] investorGroupImgIdArray = { R.drawable.img_for_investor1_button, R.drawable.img_for_investor2_button, R.drawable.img_for_investor3_button, R.drawable.img_for_investor4_button }; int[] cultureGroupContentIdArray = { 5, 6, 7 };
int[] touristGroupContentIdArray = { 8, 9, 10, 11 };
String [] cultureGroupTitleArray = { "Земфира", "Башкирский театр", "Национальная библиотека" }; int[] educationGroupContentIdArray = { 12, 13, 14 };
String [] cultureGroupSubtitleArray = { "Персона дня", "Культурные традиции", "Литература"};
int[] cultureGroupImgIdArray = { R.drawable.img_culture1_button, R.drawable.img_culture2_button, R.drawable.img_culture3_button };
String [] touristGroupTitleArray = { "Панорамы Уфы", "Иремель", "Памятник Салавату Юлаеву", "Ночная жизнь в Уфе" };
String [] touristGroupSubtitleArray = { "Уфа с высоты птичьего полета", "Природный парк", "Достопримечательность", "Обзор"};
int[] touristGroupImgIdArray = { R.drawable.img_tourist1_button, R.drawable.img_tourist2_button, R.drawable.img_tourist3_button, R.drawable.img_tourist4_button };
String [] educationGroupTitleArray = { "Учебные заведения Уфы", "УГАТУ", "БГПУ" };
String [] educationGroupSubtitleArray = { "Обзор", "Университет", "Университет"};
int[] educationGroupImgIdArray = { R.drawable.img_education1_button, R.drawable.img_education2_button, R.drawable.img_education3_button };
ListView listView; ListView listView;
View header; View header;
@ -115,8 +105,8 @@ public class MainPageFragment extends Fragment implements NewsUpdatedCallbackInt
ImageManager.getInstance().ApplyImageToImageView(news1ImageButton, newsRecordArr.get(0).imageId); ImageManager.getInstance().ApplyImageToImageView(news1ImageButton, newsRecordArr.get(0).imageId);
news1Button.setText(newsRecordArr.get(0).title); news1Button.setText(newsRecordArr.get(0).title);
news1ImageButton.setOnClickListener(new ButtonOnClickListener(newsRecordArr.get(0))); news1ImageButton.setOnClickListener(new NewsButtonOnClickListener(newsRecordArr.get(0)));
news1Button.setOnClickListener(new ButtonOnClickListener(newsRecordArr.get(0))); news1Button.setOnClickListener(new NewsButtonOnClickListener(newsRecordArr.get(0)));
} }
else else
{ {
@ -130,8 +120,8 @@ public class MainPageFragment extends Fragment implements NewsUpdatedCallbackInt
{ {
ImageManager.getInstance().ApplyImageToImageView(news2ImageButton, newsRecordArr.get(1).imageId); ImageManager.getInstance().ApplyImageToImageView(news2ImageButton, newsRecordArr.get(1).imageId);
news2Button.setText(newsRecordArr.get(1).title); news2Button.setText(newsRecordArr.get(1).title);
news2ImageButton.setOnClickListener(new ButtonOnClickListener(newsRecordArr.get(1))); news2ImageButton.setOnClickListener(new NewsButtonOnClickListener(newsRecordArr.get(1)));
news2Button.setOnClickListener(new ButtonOnClickListener(newsRecordArr.get(1))); news2Button.setOnClickListener(new NewsButtonOnClickListener(newsRecordArr.get(1)));
} }
else else
{ {
@ -145,8 +135,8 @@ public class MainPageFragment extends Fragment implements NewsUpdatedCallbackInt
{ {
ImageManager.getInstance().ApplyImageToImageView(news3ImageButton, newsRecordArr.get(2).imageId); ImageManager.getInstance().ApplyImageToImageView(news3ImageButton, newsRecordArr.get(2).imageId);
news3Button.setText(newsRecordArr.get(2).title); news3Button.setText(newsRecordArr.get(2).title);
news3ImageButton.setOnClickListener(new ButtonOnClickListener(newsRecordArr.get(2))); news3ImageButton.setOnClickListener(new NewsButtonOnClickListener(newsRecordArr.get(2)));
news3Button.setOnClickListener(new ButtonOnClickListener(newsRecordArr.get(2))); news3Button.setOnClickListener(new NewsButtonOnClickListener(newsRecordArr.get(2)));
} }
else else
{ {
@ -202,19 +192,19 @@ public class MainPageFragment extends Fragment implements NewsUpdatedCallbackInt
if (position == 0) if (position == 0)
{ {
hListView.setAdapter(new MainPageHListViewAdapters.SimpleElementAdapter(getActivity(), investorGroupTitleArray, investorGroupSubtitleArray, investorGroupImgIdArray)); hListView.setAdapter(new MainPageHListViewAdapters.SimpleElementAdapter(getActivity(), investorGroupContentIdArray));
} }
else if (position == 1) else if (position == 1)
{ {
hListView.setAdapter(new MainPageHListViewAdapters.SimpleElementAdapter(getActivity(), cultureGroupTitleArray, cultureGroupSubtitleArray, cultureGroupImgIdArray)); hListView.setAdapter(new MainPageHListViewAdapters.SimpleElementAdapter(getActivity(), cultureGroupContentIdArray));
} }
else if (position == 2) else if (position == 2)
{ {
hListView.setAdapter(new MainPageHListViewAdapters.SimpleElementAdapter(getActivity(), touristGroupTitleArray, touristGroupSubtitleArray, touristGroupImgIdArray)); hListView.setAdapter(new MainPageHListViewAdapters.SimpleElementAdapter(getActivity(), touristGroupContentIdArray));
} }
else else
{ {
hListView.setAdapter(new MainPageHListViewAdapters.SimpleElementAdapter(getActivity(), educationGroupTitleArray, educationGroupSubtitleArray, educationGroupImgIdArray)); hListView.setAdapter(new MainPageHListViewAdapters.SimpleElementAdapter(getActivity(), educationGroupContentIdArray));
} }
textView.setText(teaserHeaderArray[position]); textView.setText(teaserHeaderArray[position]);
@ -241,12 +231,12 @@ public class MainPageFragment extends Fragment implements NewsUpdatedCallbackInt
}); });
} }
public static class ButtonOnClickListener implements OnClickListener public static class NewsButtonOnClickListener implements OnClickListener
{ {
NewsRecord newsRecord; NewsRecord newsRecord;
public ButtonOnClickListener(NewsRecord newsRecord) public NewsButtonOnClickListener(NewsRecord newsRecord)
{ {
this.newsRecord = newsRecord; this.newsRecord = newsRecord;
} }

View File

@ -1,9 +1,11 @@
package fishrungames.bashgid; package fishrungames.bashgid;
import fishrungames.bashgid.core.LinkContentStorage;
import android.content.Context; import android.content.Context;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.view.View.OnClickListener;
import android.widget.BaseAdapter; import android.widget.BaseAdapter;
import android.widget.ImageButton; import android.widget.ImageButton;
import android.widget.LinearLayout; import android.widget.LinearLayout;
@ -14,22 +16,18 @@ public class MainPageHListViewAdapters {
public static class SimpleElementAdapter extends BaseAdapter { public static class SimpleElementAdapter extends BaseAdapter {
String [] textsArray; int [] contentIdArray;
String [] subTextsArray;
int [] imgIdArray;
private Context mContext; private Context mContext;
public SimpleElementAdapter(Context c, String [] textsArray, String [] subTextsArray, int [] imgIdArray) { public SimpleElementAdapter(Context c, int [] contentIdArray) {
mContext = c; mContext = c;
this.textsArray = textsArray; this.contentIdArray = contentIdArray;
this.subTextsArray = subTextsArray;
this.imgIdArray = imgIdArray;
} }
public int getCount() { public int getCount() {
return textsArray.length; return contentIdArray.length;
} }
public Object getItem(int position) { public Object getItem(int position) {
@ -61,11 +59,13 @@ public class MainPageHListViewAdapters {
ImageButton imageButton = (ImageButton) view.findViewById(R.id.imageButton); ImageButton imageButton = (ImageButton) view.findViewById(R.id.imageButton);
textView.setText(textsArray[position]); textView.setText(LinkContentStorage.titleArray[contentIdArray[position]]);
subTextView.setText(subTextsArray[position]); subTextView.setText(LinkContentStorage.subtitleArray[contentIdArray[position]]);
imageButton.setBackgroundResource(imgIdArray[position]); imageButton.setBackgroundResource(LinkContentStorage.imgIdArray[contentIdArray[position]]);
imageButton.setOnClickListener(new ContentButtonOnClickListener(contentIdArray[position]));
return view; return view;
} }
@ -133,7 +133,23 @@ public static class DarkenElementAdapter extends BaseAdapter {
} }
public static class ContentButtonOnClickListener implements OnClickListener
{
Integer contentId;
public ContentButtonOnClickListener(Integer contentId)
{
this.contentId = contentId;
}
@Override
public void onClick(View v)
{
MainActivity.getInstance().OpenLinkContentScreen(contentId);
}
}
} }

View File

@ -0,0 +1,54 @@
package fishrungames.bashgid.core;
import fishrungames.bashgid.R;
public class LinkContentStorage
{
public static String [] titleArray = { "", "Предприятия Башкортостана", "Статистика", "Помощь инвестору", "Транспорт",
"Земфира", "Башкирский театр", "Национальная библиотека",
"Панорамы Уфы", "Шульган-Таш", "Фотографии старой Уфы", "Ночная жизнь в Уфе",
"Министерство Образования", "УГАТУ", "БГПУ"
};
public static String [] textArray = {
"",
"Развитие промышленного производства республики характеризуется стабильностью позитивных процессов и поступательным ростом объемов производства. Структура промышленного производства Республики Башкортостан включает добычу полезных ископаемых, обрабатывающие производства, производство и распределение электроэнергии, газа и воды.",
"Территориальный орган Федеральной службы государственной статистики по Республике Башкортостан (далее Башкортостанстат) является главным учетно-статистическим центром Республики Башкортостан и относится к федеральным органам исполнительной власти, осуществляющим руководство статистикой на территории Республики Башкортостан, исходя из отнесения в соответствии со статьей 71 Конституции Российской Федерации официального статистического учета к ведению Российской Федерации.",
"ГАУ РБ «Агентство по привлечению инвестиций» создано создано в соответствии с распоряжением Правительства Республики Башкортостан от 20 августа 2013 года № 1036-р. Миссия Агентства повышение инвестиционной привлекательности Республики Башкортостан, создание максимально комфортной бизнес-среды для привлечения инвестиций.",
"Позитивным фактором географического положения является близость Республики Башкортостан к развитым регионам Урала и Поволжья, прежде всего к Свердловской области и Республике Татарстан. Кроме того, для Башкирии определенную роль играет фактор транзитного положения. Через Республику проходит Транссибирская магистраль, связывающая Центральную часть России с Сибирью и Дальним Востоком, а также со странами Средней Азии, в первую очередь с Казахстаном.",
"Земфира — российская певица, музыкант, композитор и автор песен. Одна из самых коммерчески успешных исполнительниц в истории российской музыки. Земфира стала олицетворением нового движения в русском роке, которое журналисты окрестили «женский рок».",
"Башкирский государственный академический театр драмы имени Мажита Гафури, насчитывающий свою историю с 1919 года, имеет статус первого театра республики, хранителя и продолжателя башкирского национального искусства. Почти целый век Башкирский академический театр служит идеалам мира, добра и любви, утверждая на своей сцене высокие нравственные ценности, хранит народную культуру, родной язык, традиции, менталитет, тем самым объединяет народ, укрепляет и сохраняет национальный дух.",
"Национальная библиотека Республики Башкортостан является государственной, центральной, универсальной, научной, общедоступной библиотекой Республики Башкортостан, культурным центром республиканского значения, национальным хранилищем документов, республиканским центром научно-исследовательской работы в области библиотековедения, библиографоведения и книговедения. ",
"Виртуальный тур по Уфе (панорама города) - это новый проект официального городского портала, который позволит вам ознакомиться с видом нашего замечательного города с высоты птичьего полета. Уверены, для многих из вас Уфа предстанет в новом свете, не часто удается подняться в небо, чтобы полюбоваться неувядающей красотой города - миллионника, его современными архитектурными решениями новых кварталов, гармонично сочетающимися с исторической частью столицы, городскими пейзажами и живописными окрестностями.",
"Государственный природный заповедник «Шульга́н-Таш» расположен в западных предгорьях горно-лесной области Южного Урала, в Бурзя́нском районе Республики Башкортостан. Заповедник «Шульга́н-Таш» является природоохранным, научно-исследовательским, эколого-просветительским учреждением федерального значения и частью ядра созданного в 2012 году комплексного биосферного резервата ЮНЕСКО «Башки́рский Ура́л».",
"Уникальные фотографии Уфы, сделанные в начале XX века",
"Каждый день с 12.00 до 16.00 Harat`s Pub приглашает на ирландский завтрак глазунья с тостами, горячими колбасками, беконом, помидорами черри и красной фасолью за 170 руб.",
"Министерство образования Республики Башкортостан занимается обеспечением и развитием на территории Республики Башкортостан единого российского образовательного пространства с ориентацией на международные стандарты образования, реализацией республиканских и федеральных программ развития образования в целях обеспечения взаимодействия образовательной системы с органами государственной власти.",
"Уфимский государственный авиационный технический университет - ведущий и крупнейший технический вуз города Уфы и Республики Башкортостан, центр отечественной науки и культуры, один из старейших университетов региона, победитель конкурса инновационных образовательных программ вузов",
"Башкирский государственный педагогический университет имени М. Акмуллы́ (БГПУ имени М. Акмуллы) — является государственным образовательным учреждением высшего профессионального образования федерального подчинения."
};
public static String [] subtitleArray = { "", "Инвестиционная карта", "Все об экономике Башкортостана", "Программа помощи инвесторам", "Обзор транспортной инфраструктуры",
"Персона дня", "Культурные традиции", "Литература",
"Уфа с высоты птичьего полета", "Природный заповедник", "Фотогалерея", "Обзор",
"Учреждение", "Университет", "Университет"
};
public static String [] webLinkArray = { "", "http://map.bashkortostan.ru/", "http://bashstat.gks.ru/wps/wcm/connect/rosstat_ts/bashstat/ru/", "http://invest.bashkortostan.ru/pages/15", "http://invest.bashkortostan.ru/pages/11",
"http://www.zemfira.ru/", "http://bashdram.ru/", "http://www.bashnl.ru/",
"http://www.ufacity.info/panorama/", "http://www.shulgan-tash.ru/", "http://srr.on.ufanet.ru/ufa.htm", "http://www.poufe.ru/poufe.php?type=clubs",
"http://education.bashkortostan.ru", "http://ugatu.su/", "http://bspu.ru/"
};
public static int[] imgIdArray = { 0, R.drawable.img_for_investor1_button, R.drawable.img_for_investor2_button, R.drawable.img_for_investor3_button, R.drawable.img_for_investor4_button,
R.drawable.img_culture1_button, R.drawable.img_culture2_button, R.drawable.img_culture3_button,
R.drawable.img_tourist1_button, R.drawable.img_tourist2_button, R.drawable.img_tourist3_button, R.drawable.img_tourist4_button,
R.drawable.img_education1_button, R.drawable.img_education2_button, R.drawable.img_education3_button
};
}

View File

@ -37,7 +37,7 @@ public class NewsManager {
public static boolean CanCallSynchronization() public static boolean CanCallSynchronization()
{ {
return SynchronizationInProcess; return !SynchronizationInProcess;
} }