Wednesday, 18 January 2017

Text in Listview in android using volley library

1.build.gradle(Module:app)

apply plugin: 'com.android.application'
android {
    compileSdkVersion 24 
 buildToolsVersion "24.0.2"
    defaultConfig {
 applicationId "com.bhanu.bhanu1.volleyimage" 
 minSdkVersion 15 
 targetSdkVersion 24 
 versionCode 1 
 versionName "1.0" 
 }
    buildTypes {
 release {
 minifyEnabled false 
 proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
 }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12' 
 
    compile 'com.android.support:appcompat-v7:24.2.1' 
    compile 'com.android.volley:volley:1.0.0'
}


2.Manifest;

<?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"    package="com.bhanu.bhanu1.volleyimage">

    <uses-permission android:name="android.permission.INTERNET" /> 
 
<application 
 android:allowBackup="true" 
 android:icon="@mipmap/ic_launcher" 
 android:label="@string/app_name" 
 android:supportsRtl="true" 
 android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        
    </application>

</manifest>
3.Layout;

1.activity_main

<?xml version="1.0" encoding="utf-8"?>
  <RelativeLayout 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:paddingBottom="@dimen/activity_vertical_margin" 
 android:paddingLeft="@dimen/activity_horizontal_margin" 
 android:paddingRight="@dimen/activity_horizontal_margin" 
 android:paddingTop="@dimen/activity_vertical_margin"    >

    <ListView 
 android:layout_width="wrap_content" 
 android:layout_height="wrap_content" 
 android:id="@+id/listView" 
 android:layout_alignParentTop="true" 
 android:layout_alignParentLeft="true" 
 android:layout_alignParentStart="true" />
 
 </RelativeLayout>

 
4.Activity:

public class MainActivity extends AppCompatActivity {
    ListView lv1;
    String url = "https://gist.githubusercontent.com/anonymous/5a052f20b1d2c5da8ffef29058f84bb8/raw/7a3296210445d8289a6b25302bc336702ed6b509/ead787b7-dd59-11e6-90ab-a17e7004c7c4.json";
    RequestQueue rq;
    String data = "";
    @Override    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        lv1 = (ListView)findViewById(R.id.listView);
        final ArrayAdapter<String> adapter = new ArrayAdapter<>(this,
                android.R.layout.simple_list_item_1, android.R.id.text1);
        rq = Volley.newRequestQueue(this);
        JsonArrayRequest jar1 = new JsonArrayRequest(url, new Response.Listener<JSONArray>()
        {
            @Override 
 public void onResponse(JSONArray response) {
                try {
                    JSONObject jo = response.getJSONObject(0);
                    JSONArray ja = jo.getJSONArray("colorArray");
                    for(int i = 0;i<ja.length();i++)
                    {
                        JSONObject jo1 = ja.getJSONObject(i);
                        String s1 = jo1.getString("name");
                        adapter.add(s1);
                    }
                    lv1.setAdapter(adapter);

                } catch (JSONException e) {
                    e.printStackTrace();
                }


            }
        }, new Response.ErrorListener() {
            @Override 
 public void onErrorResponse(VolleyError error) {
                Log.e("Volley","Error");
            }
        }
        );
        rq.add(jar1);

    }
}


Sunday, 1 January 2017

CustomToast

Java

1.MainActivity

public class MainActivity extends Activity {
@Override
   public void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       setContentView(R.layout.activity_main);
     
       LayoutInflater li = getLayoutInflater();
       View layout = li.inflate(R.layout.customtoast,
         (ViewGroup) findViewById(R.id.custom_toast_layout));
   
       Toast toast = new Toast(getApplicationContext());
       toast.setDuration(Toast.LENGTH_SHORT);
       toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);
       toast.setView(layout);
       toast.show();
   }
   @Override
   public boolean onCreateOptionsMenu(Menu menu) {
       getMenuInflater().inflate(R.menu.activity_main, menu);
       return true;
   }

}

layouts

1.activity-main

<RelativeLayout 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"
    tools:context=".MainActivity" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:text="@string/hello_world" />

</RelativeLayout>

2.customtoast

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:id="@+id/custom_toast_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:background="#F14E23"
     >
     
    <ImageView
        android:id="@+id/custom_toast_image"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:contentDescription="@string/hello_world"
        android:src="@drawable/ic_launcher"/>
<TextView
        android:id="@+id/custom_toast_message"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:contentDescription="@string/Toast"
        android:text="@string/Toast" />
</LinearLayout>