diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/.gitignore b/Android/SnehaVeerakumar/Advanced/dailyNews/.gitignore new file mode 100644 index 00000000..aa724b77 --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/.gitignore @@ -0,0 +1,15 @@ +*.iml +.gradle +/local.properties +/.idea/caches +/.idea/libraries +/.idea/modules.xml +/.idea/workspace.xml +/.idea/navEditor.xml +/.idea/assetWizardSettings.xml +.DS_Store +/build +/captures +.externalNativeBuild +.cxx +local.properties diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/.gitignore b/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/.gitignore new file mode 100644 index 00000000..26d33521 --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/compiler.xml b/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/compiler.xml new file mode 100644 index 00000000..fb7f4a8a --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/compiler.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/gradle.xml b/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/gradle.xml new file mode 100644 index 00000000..440480e5 --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/gradle.xml @@ -0,0 +1,19 @@ + + + + + + \ No newline at end of file diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/jarRepositories.xml b/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/jarRepositories.xml new file mode 100644 index 00000000..0380d8d3 --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/jarRepositories.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/misc.xml b/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/misc.xml new file mode 100644 index 00000000..860da66a --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/misc.xml @@ -0,0 +1,9 @@ + + + + + + + + \ No newline at end of file diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/runConfigurations.xml b/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/runConfigurations.xml new file mode 100644 index 00000000..797acea5 --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/.idea/runConfigurations.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/app/.gitignore b/Android/SnehaVeerakumar/Advanced/dailyNews/app/.gitignore new file mode 100644 index 00000000..42afabfd --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/app/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/app/build.gradle b/Android/SnehaVeerakumar/Advanced/dailyNews/app/build.gradle new file mode 100644 index 00000000..a57ed026 --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/app/build.gradle @@ -0,0 +1,49 @@ +plugins { + id 'com.android.application' +} + +android { + compileSdkVersion 30 + buildToolsVersion "30.0.3" + + defaultConfig { + applicationId "com.assessment" + minSdkVersion 23 + targetSdkVersion 30 + versionCode 1 + versionName "1.0" + + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + } + } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } +} + +dependencies { + + implementation 'androidx.appcompat:appcompat:1.3.0' + implementation 'com.google.android.material:material:1.4.0' + implementation 'androidx.constraintlayout:constraintlayout:2.0.4' + testImplementation 'junit:junit:4.+' + androidTestImplementation 'androidx.test.ext:junit:1.1.3' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' + //noinspection GradleCompatible + implementation 'com.android.support:recyclerview-v7:28.0.0' + //noinspection GradleCompatible + implementation 'com.android.support:cardview-v7:28.0.0' + //noinspection GradleCompatible + implementation 'com.android.support:design:28.0.0' + implementation 'com.android.support.constraint:constraint-layout:1.1.3' + implementation 'com.koushikdutta.ion:ion:2.+' + + implementation 'com.squareup.picasso:picasso:2.71828' +} \ No newline at end of file diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/app/proguard-rules.pro b/Android/SnehaVeerakumar/Advanced/dailyNews/app/proguard-rules.pro new file mode 100644 index 00000000..481bb434 --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/app/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/androidTest/java/com/assessment/ExampleInstrumentedTest.java b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/androidTest/java/com/assessment/ExampleInstrumentedTest.java new file mode 100644 index 00000000..c3418813 --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/androidTest/java/com/assessment/ExampleInstrumentedTest.java @@ -0,0 +1,26 @@ +package com.assessment; + +import android.content.Context; + +import androidx.test.platform.app.InstrumentationRegistry; +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; + +/** + * Instrumented test, which will execute on an Android device. + * + * @see Testing documentation + */ +@RunWith(AndroidJUnit4.class) +public class ExampleInstrumentedTest { + @Test + public void useAppContext() { + // Context of the app under test. + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + assertEquals("com.assessment", appContext.getPackageName()); + } +} \ No newline at end of file diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/AndroidManifest.xml b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/AndroidManifest.xml new file mode 100644 index 00000000..a1198b62 --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/AndroidManifest.xml @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/DetailsActivity.java b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/DetailsActivity.java new file mode 100644 index 00000000..ef9dc156 --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/DetailsActivity.java @@ -0,0 +1,42 @@ +package com.assessment; + +import android.content.Intent; +import android.graphics.Color; +import android.graphics.drawable.ColorDrawable; +import android.support.v7.app.ActionBar; +import android.support.v7.app.AppCompatActivity; +import android.os.Bundle; +import android.view.MenuItem; +import android.webkit.WebView; + +public class DetailsActivity extends AppCompatActivity { + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_details); + + WebView editWeb = findViewById(R.id.web); + Intent intent = getIntent(); + + String url = intent.getStringExtra("url"); + editWeb.loadUrl(url); + + ActionBar bar = getSupportActionBar(); + bar.setTitle("News"); + bar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("blue"))); + + bar.setDisplayHomeAsUpEnabled(true); + bar.setDisplayShowHomeEnabled(true); + + } + + public boolean onOptionsItemSelected(MenuItem item) { + if(item.getItemId() == android.R.id.home) + { + finish(); + } + + return super.onOptionsItemSelected(item); + } +} diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/ItemAdapter.java b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/ItemAdapter.java new file mode 100644 index 00000000..7224a6e9 --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/ItemAdapter.java @@ -0,0 +1,105 @@ +package com.assessment; + +import android.content.Context; +import android.content.Intent; +import android.support.annotation.NonNull; +import android.support.v4.app.FragmentActivity; +import android.support.v7.widget.RecyclerView; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.Button; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.TextView; + +import com.koushikdutta.ion.Ion; +import com.squareup.picasso.Picasso; +import java.util.ArrayList; + +public class ItemAdapter extends RecyclerView.Adapter { + + + Context context; + + private final ArrayList items; + + public ItemAdapter(Context context, ArrayList items) { + this.context = context; + this.items = items; + + } + + @NonNull + @Override + public ViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) { + LayoutInflater inflater = LayoutInflater.from(this.context); + LinearLayout layout = (LinearLayout) inflater.inflate(R.layout.news, null); + + return new ViewHolder(layout); + } + + @Override + public void onBindViewHolder(@NonNull ViewHolder holder, final int i) { + final ModelItems item = items.get(i); + + + + String title = item.getTitle(); + String author = item.getAuthor(); + String date = item.getDate(); + String urlToImage = item.getUrlToImage(); + final String url = item.getUrl(); + + + + if(title!=null) + holder.editTitle.setText(title); + if(author!=null) + holder.editauthor.setText("Author "+author); + if(date!=null) + holder.editdate.setText("published at: "+date); + if(urlToImage!=null) + Picasso.get().load(urlToImage).into(holder.editUrlImage); + + + holder.mybutton.setOnClickListener(new View.OnClickListener() { + + @Override + public void onClick(View v) { + + Intent intent = new Intent(context,DetailsActivity.class); + intent.putExtra("url",url); + context.startActivity(intent); + } + }); + + } + + + @Override + public int getItemCount() { + return items.size(); + } + + class ViewHolder extends RecyclerView.ViewHolder { + + TextView editTitle,editauthor,editdate; + ImageView editUrlImage; + Button mybutton; + ViewHolder(@NonNull View itemView) { + super(itemView); + + editTitle = itemView.findViewById(R.id.tittle1); + editUrlImage = itemView.findViewById(R.id.image1); + editauthor = itemView.findViewById(R.id.author); + editdate = itemView.findViewById(R.id.date); + mybutton = itemView.findViewById(R.id.details); + + + } + + } + + +} \ No newline at end of file diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/MainActivity.java b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/MainActivity.java new file mode 100644 index 00000000..e82408bc --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/MainActivity.java @@ -0,0 +1,50 @@ +package com.assessment; + +import android.content.Intent; +import android.content.SharedPreferences; +import android.graphics.Color; +import android.graphics.drawable.ColorDrawable; +import android.preference.PreferenceManager; +import android.support.design.widget.TabLayout; +import android.support.v4.app.Fragment; +import android.support.v4.view.ViewPager; +import android.support.v7.app.ActionBar; +import android.support.v7.app.AppCompatActivity; +import android.os.Bundle; +import android.util.Log; +import android.view.View; +import android.widget.TextView; + + +public class MainActivity extends AppCompatActivity { + + private TabLayout TabLayout; + private ViewPager viewPager; + private MyPageAdapter adapter; + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_main); + + viewPager = findViewById(R.id.viewPager); + TabLayout = findViewById(R.id.tablayout); + + + adapter = new MyPageAdapter(getSupportFragmentManager()); + viewPager.setAdapter(adapter); + + TabLayout.setTabsFromPagerAdapter(adapter); + TabLayout.setupWithViewPager(viewPager); + viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(TabLayout)); + + + // for top bar of activity + ActionBar bar = getSupportActionBar(); + bar.setTitle("News list"); + bar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("blue"))); + + } + + + +} \ No newline at end of file diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/ModelItems.java b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/ModelItems.java new file mode 100644 index 00000000..27a934e0 --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/ModelItems.java @@ -0,0 +1,61 @@ +package com.assessment; + +public class ModelItems { + + String title; + String author; + String date; + String urlToImage; + String url; + + public ModelItems() { + } + + public ModelItems(String title, String author, String date, String urlToImage, String url) { + this.title = title; + this.author = author; + this.date = date; + this.urlToImage = urlToImage; + this.url = url; + } + + public String getTitle() { + return title; + } + + public void setTitle(String title) { + this.title = title; + } + + public String getAuthor() { + return author; + } + + public void setAuthor(String author) { + this.author = author; + } + + public String getDate() { + return date; + } + + public void setDate(String date) { + this.date = date; + } + + public String getUrlToImage() { + return urlToImage; + } + + public void setUrlToImage(String urlToImage) { + this.urlToImage = urlToImage; + } + + public String getUrl() { + return url; + } + + public void setUrl(String url) { + this.url = url; + } +} diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/MyPageAdapter.java b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/MyPageAdapter.java new file mode 100644 index 00000000..536abc04 --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/MyPageAdapter.java @@ -0,0 +1,64 @@ +package com.assessment; + +import android.content.Context; +import android.support.annotation.NonNull; +import android.support.annotation.Nullable; +import android.support.v4.app.Fragment; +import android.support.v4.app.FragmentManager; +import android.support.v4.app.FragmentStatePagerAdapter; +import android.util.Log; + +public class MyPageAdapter extends FragmentStatePagerAdapter { + + +//http://newsapi.org/v2/top-headlines?sources=bbc-news&apiKey=9e1ac8704e124f32ab6b70e9de3a56c8 + + public MyPageAdapter(FragmentManager fm) { + + super(fm); + + } + + + @Override + public Fragment getItem(int i) { + // Log.e("pra"," "+i); + fragment frag = new fragment(i); + return frag; + } + + @Override + public int getCount() { + return 10; + } + + @Nullable + @Override + public CharSequence getPageTitle(int position) { + + if(position == 0) + return "VICE-News"; + else if(position == 1) + return "Ary News"; //ary-news + else if(position ==2) + return "BBC News"; //bbc-news + else if(position ==3) + return "BBC Sport"; //bbc-sport + else if(position == 4) + return "USA Today"; //cnbc + else if(position ==5) + return "CNN"; //cnn + else if(position ==6) + return "Fox News"; //fox-news + else if(position ==7) + return "Google News"; //google-news + else if(position ==8) + return "The Verge"; + else if(position ==9) + return "News24"; //news24 + else + return "hello"; + + + } +} diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/fragment.java b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/fragment.java new file mode 100644 index 00000000..93a8a3f8 --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/java/com/assessment/fragment.java @@ -0,0 +1,160 @@ +package com.assessment; + + +import android.app.Activity; +import android.arch.lifecycle.Lifecycle; +import android.content.Context; +import android.content.Intent; +import android.content.SharedPreferences; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.os.Bundle; +import android.preference.PreferenceManager; +import android.support.annotation.NonNull; +import android.support.annotation.Nullable; +import android.support.v4.app.Fragment; +import android.support.v4.app.FragmentActivity; +import android.support.v4.app.FragmentManager; +import android.support.v4.view.ViewPager; +import android.support.v7.widget.LinearLayoutManager; +import android.support.v7.widget.RecyclerView; +import android.util.Log; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.webkit.WebView; +import android.widget.Button; +import android.widget.ImageView; +import android.widget.TextView; +import android.widget.Toast; + +import com.google.gson.JsonArray; +import com.google.gson.JsonObject; +import com.koushikdutta.async.future.FutureCallback; +import com.koushikdutta.ion.Ion; +import com.squareup.picasso.Picasso; + +import org.json.JSONObject; +import org.w3c.dom.Text; + +import java.io.IOException; +import java.io.InputStream; +import java.net.HttpURLConnection; +import java.net.URL; +import java.util.ArrayList; +import java.util.zip.Inflater; + +public class fragment extends Fragment { + + + ArrayList items = new ArrayList <>(); + ItemAdapter adapter; + + Context context; + int pos; + public fragment() { + + } + + public fragment(int i) { + + this.pos = i; + } + + + @Nullable + @Override + public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { + + return inflater.inflate(R.layout.xmlfragment, container, false); + + } + + + @Override + public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + + final RecyclerView recyclerView = getView().findViewById(R.id.recyclerView); + + + String urltemp=""; + if (pos == 0) { + urltemp = "http://newsapi.org/v2/top-headlines?sources=vice-news&apiKey=9e1ac8704e124f32ab6b70e9de3a56c8"; + } + else if(pos == 1) + urltemp = "http://newsapi.org/v2/top-headlines?sources=ary-news&apiKey=9e1ac8704e124f32ab6b70e9de3a56c8"; + else if(pos == 2) + urltemp = "http://newsapi.org/v2/top-headlines?sources=bbc-news&apiKey=9e1ac8704e124f32ab6b70e9de3a56c8"; + else if(pos == 3) + urltemp = "http://newsapi.org/v2/top-headlines?sources=bbc-sport&apiKey=9e1ac8704e124f32ab6b70e9de3a56c8"; + else if(pos == 4) + urltemp = "http://newsapi.org/v2/top-headlines?sources=usa-today&apiKey=9e1ac8704e124f32ab6b70e9de3a56c8"; + else if(pos == 5) + urltemp = "http://newsapi.org/v2/top-headlines?sources=cnn&apiKey=9e1ac8704e124f32ab6b70e9de3a56c8"; + else if(pos == 6) + urltemp = "http://newsapi.org/v2/top-headlines?sources=fox-news&apiKey=9e1ac8704e124f32ab6b70e9de3a56c8"; + else if(pos == 7) + urltemp = "http://newsapi.org/v2/top-headlines?sources=google-news&apiKey=9e1ac8704e124f32ab6b70e9de3a56c8"; + else if(pos == 8) + urltemp = "http://newsapi.org/v2/top-headlines?sources=the-verge&apiKey=9e1ac8704e124f32ab6b70e9de3a56c8"; + else if(pos == 9) + urltemp = "http://newsapi.org/v2/top-headlines?sources=news24&apiKey=9e1ac8704e124f32ab6b70e9de3a56c8"; + else + { + urltemp = "http://newsapi.org/v2/top-headlines?sources=abc-news&apiKey=9e1ac8704e124f32ab6b70e9de3a56c8"; + } + + Ion.with(this).load("GET", urltemp).asJsonObject().setCallback(new FutureCallback () { + @Override + public void onCompleted(Exception e, JsonObject result) { + + String status = result.get("status").getAsString(); + + if (status.equals("ok")) { + + JsonArray array = result.get("articles").getAsJsonArray(); + + for (int i = 0; i < array.size(); i++) { + JsonObject object = array.get(i).getAsJsonObject(); + + String author = object.get("author").toString(); + + String title = object.get("title").toString(); + title = title.substring(1, title.length() - 1); + + String url = object.get("url").toString(); + url = url.substring(1, url.length() - 1); + + String urlToImage = object.get("urlToImage").toString(); + urlToImage = urlToImage.substring(1, urlToImage.length() - 1); + + String date = object.get("publishedAt").toString(); + String content = object.get("content").toString(); + content = content.substring(1, content.length() - 1); + + items.add(new ModelItems(title, author, date, urlToImage, url)); + + + } + + adapter = new ItemAdapter(getActivity(), items); + recyclerView.setAdapter(adapter); + + LinearLayoutManager layoutManager = new LinearLayoutManager(getActivity()); + recyclerView.setLayoutManager(layoutManager); + + + Log.e("Success", "success"); + } else { + Log.e("Error", "error"); + } + } + }); + + } + + + + +} \ No newline at end of file diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/drawable-v24/ic_launcher_foreground.xml b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/drawable-v24/ic_launcher_foreground.xml new file mode 100644 index 00000000..fde1368f --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/drawable-v24/ic_launcher_foreground.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/drawable/ic_launcher_background.xml b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/drawable/ic_launcher_background.xml new file mode 100644 index 00000000..1e4408ca --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/drawable/ic_launcher_background.xml @@ -0,0 +1,170 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/layout/activity_details.xml b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/layout/activity_details.xml new file mode 100644 index 00000000..db05a501 --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/layout/activity_details.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/layout/activity_main.xml b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/layout/activity_main.xml new file mode 100644 index 00000000..4976b854 --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/layout/activity_main.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/layout/activity_my_news.xml b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/layout/activity_my_news.xml new file mode 100644 index 00000000..e725c2fa --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/layout/activity_my_news.xml @@ -0,0 +1,10 @@ + + + + \ No newline at end of file diff --git a/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/layout/news.xml b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/layout/news.xml new file mode 100644 index 00000000..64178e36 --- /dev/null +++ b/Android/SnehaVeerakumar/Advanced/dailyNews/app/src/main/res/layout/news.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + +