Example usage for android.widget TableLayout TableLayout

List of usage examples for android.widget TableLayout TableLayout

Introduction

In this page you can find the example usage for android.widget TableLayout TableLayout.

Prototype

public TableLayout(Context context) 

Source Link

Document

Creates a new TableLayout for the given context.

Usage

From source file:com.google.adsensequickstart.DisplayInventoryFragment.java

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

    ScrollView sv = new ScrollView(getActivity());
    TableLayout tl = new TableLayout(getActivity());
    tl.setBackgroundColor(Color.rgb(242, 239, 233));
    sv.addView(tl);//  www  .j  a v  a2 s .  c  om

    if (displayInventoryController == null) {
        return sv;
    }
    Inventory inventory = displayInventoryController.getInventory();

    TableLayout.LayoutParams tableRowParams = new TableLayout.LayoutParams(LayoutParams.MATCH_PARENT,
            LayoutParams.WRAP_CONTENT);
    tableRowParams.setMargins(1, 1, 1, 1);

    TableRow.LayoutParams accountLayoutParams = new TableRow.LayoutParams(LayoutParams.MATCH_PARENT,
            LayoutParams.WRAP_CONTENT);
    accountLayoutParams.setMargins(2, 1, 2, 1);

    TableRow.LayoutParams adCLientLayoutParams = new TableRow.LayoutParams(LayoutParams.MATCH_PARENT,
            LayoutParams.WRAP_CONTENT);
    adCLientLayoutParams.setMargins(12, 1, 2, 1);

    TableRow.LayoutParams adUnitChannelLayoutParams = new TableRow.LayoutParams(LayoutParams.MATCH_PARENT,
            LayoutParams.WRAP_CONTENT);
    adUnitChannelLayoutParams.setMargins(24, 1, 2, 1);

    for (String accountId : inventory.getAccounts()) {
        TableRow trow = new TableRow(getActivity());
        tl.addView(trow);
        TextView tv = new TextView(getActivity());
        tv.setText(accountId);
        trow.addView(tv);
        tv.setLayoutParams(accountLayoutParams);

        for (String adClient : inventory.getAdClients(accountId)) {
            TableRow trow2 = new TableRow(getActivity());
            trow2.setBackgroundColor(Color.rgb(214, 204, 181));
            tl.addView(trow2);
            TextView tv2 = new TextView(getActivity());
            tv2.setText(adClient);
            trow2.addView(tv2);
            tv2.setLayoutParams(adCLientLayoutParams);
            for (String adUnit : inventory.getAdUnits(adClient)) {
                TableRow trow3 = new TableRow(getActivity());
                trow3.setBackgroundColor(Color.rgb(251, 145, 57));
                tl.addView(trow3);
                TextView tv3 = new TextView(getActivity());
                tv3.setText(adUnit);
                trow3.addView(tv3);
                tv3.setLayoutParams(adUnitChannelLayoutParams);
            }
            for (String customChannel : inventory.getCustomChannels(adClient)) {
                TableRow trow3 = new TableRow(getActivity());
                trow3.setBackgroundColor(Color.rgb(255, 195, 69));
                tl.addView(trow3);
                TextView tv3 = new TextView(getActivity());
                tv3.setText(customChannel);
                trow3.addView(tv3);
                tv3.setLayoutParams(adUnitChannelLayoutParams);
            }
        }
    }
    return sv;
}

From source file:com.google.adsensequickstart.DisplayReportFragment.java

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

    ScrollView sv = new ScrollView(getActivity());
    TableLayout tl = new TableLayout(getActivity());
    sv.addView(tl);/*from  w w w .j  av  a2s .  c  o  m*/

    if (displayReportController == null) {
        return sv;
    }
    AdsenseReportsGenerateResponse response = displayReportController.getReportResponse();

    TableLayout.LayoutParams tableRowParams = new TableLayout.LayoutParams(LayoutParams.MATCH_PARENT,
            LayoutParams.WRAP_CONTENT);
    tableRowParams.setMargins(10, 10, 10, 10);

    TableRow.LayoutParams tvParams = new TableRow.LayoutParams(LayoutParams.MATCH_PARENT,
            LayoutParams.WRAP_CONTENT);
    tvParams.setMargins(10, 10, 10, 10);

    List<Headers> headers = response.getHeaders();
    TableRow tr = new TableRow(getActivity());
    tl.addView(tr);

    for (Headers header : headers) {
        TextView tv = new TextView(getActivity());
        tv.setText(header.getName());
        tr.setLayoutParams(tableRowParams);
        tr.addView(tv);
    }
    if (response.getRows() != null && !response.getRows().isEmpty()) {
        for (List<String> row : response.getRows()) {
            TableRow trow = new TableRow(getActivity());
            tl.addView(trow);
            for (String cell : row) {
                TextView tv = new TextView(getActivity());
                tv.setText(cell);
                trow.addView(tv);
                tv.setLayoutParams(tvParams);
                tv.setPadding(15, 5, 15, 5);
                tv.setBackgroundColor(Color.WHITE);
            }
        }
    }
    return sv;
}

From source file:com.mifos.utils.DataTableUIBuilder.java

public LinearLayout getDataTableLayout(final DataTable dataTable, JsonArray jsonElements,
        LinearLayout parentLayout, final Context context, final int entityId,
        DataTableActionListener mListener) {
    dataTableActionListener = mListener;

    /**/*from  w  w  w . j a  v  a2  s  .  c o m*/
     * Create a Iterator with Json Elements to Iterate over the DataTable
     * Response.
     */
    Iterator<JsonElement> jsonElementIterator = jsonElements.iterator();
    /*
     * Each Row of the Data Table is Treated as a Table Here.
     * Creating the First Table for First Row
     */
    tableIndex = 0;
    while (jsonElementIterator.hasNext()) {
        TableLayout tableLayout = new TableLayout(context);
        tableLayout.setPadding(10, 10, 10, 10);

        final JsonElement jsonElement = jsonElementIterator.next();
        /*
        * Each Entry in a Data Table is Displayed in the
        * form of a table where each row contains one Key-Value Pair
        * i.e a Column Name - Column Value from the DataTable
        */
        int rowIndex = 0;
        while (rowIndex < dataTable.getColumnHeaderData().size()) {
            TableRow tableRow = new TableRow(context);
            tableRow.setLayoutParams(new TableRow.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
                    ViewGroup.LayoutParams.MATCH_PARENT));
            tableRow.setPadding(10, 10, 10, 10);
            if (rowIndex % 2 == 0) {
                tableRow.setBackgroundColor(Color.LTGRAY);
            } else {
                tableRow.setBackgroundColor(Color.WHITE);
            }

            TextView key = new TextView(context);
            key.setText(dataTable.getColumnHeaderData().get(rowIndex).getColumnName());
            key.setGravity(Gravity.LEFT);
            TextView value = new TextView(context);
            value.setGravity(Gravity.RIGHT);
            if (jsonElement.getAsJsonObject().get(dataTable.getColumnHeaderData().get(rowIndex).getColumnName())
                    .toString().contains("\"")) {
                value.setText(jsonElement.getAsJsonObject()
                        .get(dataTable.getColumnHeaderData().get(rowIndex).getColumnName()).toString()
                        .replace("\"", ""));
            } else {
                value.setText(jsonElement.getAsJsonObject()
                        .get(dataTable.getColumnHeaderData().get(rowIndex).getColumnName()).toString());
            }

            tableRow.addView(key, new TableRow.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
                    ViewGroup.LayoutParams.WRAP_CONTENT, 1f));
            tableRow.addView(value, new TableRow.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
                    ViewGroup.LayoutParams.WRAP_CONTENT, 1f));
            TableRow.LayoutParams layoutParams = new TableRow.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
                    ViewGroup.LayoutParams.MATCH_PARENT);
            layoutParams.setMargins(12, 16, 12, 16);
            tableLayout.addView(tableRow, layoutParams);

            rowIndex++;
        }

        tableLayout.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                Toast.makeText(context, "Update Row " + tableIndex, Toast.LENGTH_SHORT).show();
            }
        });

        tableLayout.setOnLongClickListener(new View.OnLongClickListener() {
            @Override
            public boolean onLongClick(View v) {

                Toast.makeText(context, "Deleting Row " + tableIndex, Toast.LENGTH_SHORT).show();

                BaseApiManager baseApiManager = new BaseApiManager();
                DataManager dataManager = new DataManager(baseApiManager);
                Observable<GenericResponse> call = dataManager
                        .removeDataTableEntry(dataTable.getRegisteredTableName(), entityId,
                                Integer.parseInt(jsonElement.getAsJsonObject()
                                        .get(dataTable.getColumnHeaderData().get(0).getColumnName())
                                        .toString()));
                Subscription subscription = call.subscribeOn(Schedulers.io())
                        .observeOn(AndroidSchedulers.mainThread()).subscribe(new Subscriber<GenericResponse>() {
                            @Override
                            public void onCompleted() {

                            }

                            @Override
                            public void onError(Throwable e) {

                            }

                            @Override
                            public void onNext(GenericResponse genericResponse) {
                                Toast.makeText(context, "Deleted Row " + tableIndex, Toast.LENGTH_SHORT).show();
                                dataTableActionListener.onRowDeleted();
                            }
                        });

                return true;
            }
        });

        View v = new View(context);
        v.setBackgroundColor(ContextCompat.getColor(context, R.color.black));
        parentLayout.addView(tableLayout);
        parentLayout.addView(v, new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, 5));
        Log.i("TABLE INDEX", "" + tableIndex);
        tableIndex++;
    }
    return parentLayout;
}

From source file:com.jeffreyawest.weblogic.monitor.activity.display.DisplayApplicationActivity.java

@Override
public void updateDisplay(Application app) {

    super.updateDisplay(app);

    setTitle(app.getName() + " (" + app.getType() + ")");
    //app_target_state_chart_fragment

    FragmentManager fm = getSupportFragmentManager();

    ApplicationTargetStatePieChart targetStatePieChart = (ApplicationTargetStatePieChart) fm
            .findFragmentById(R.id.app_target_state_chart_fragment);
    targetStatePieChart.update(app);/*from  w  w w .  j a  v a 2  s. c om*/

    LinearLayout tableContainer = (LinearLayout) DisplayApplicationActivity.this
            .findViewById(R.id.data_container);

    TextView header = new TextView(DisplayApplicationActivity.this);
    header.setTextSize(this.getResources().getDimension(R.dimen.entity_details_table_text_size));
    header.setText("Application Target States");

    TableLayout stateTable = new TableLayout(DisplayApplicationActivity.this);
    tableContainer.addView(stateTable);

    for (ApplicationTargetState state : app.getTargetStates()) {
        stateTable.addView(getRow(state.getTarget(), state.getState().toString()));
    }
}

From source file:com.jeffreyawest.weblogic.monitor.activity.display.DisplayClusterActivity.java

@Override
public void updateDisplay(Cluster result) {
    setTitle(result.getName());/*from   ww  w. ja v a 2s  .co m*/

    super.updateDisplay(result);
    FragmentManager fm = getSupportFragmentManager();

    ClusterServerHealthPieChart healthPieChart = (ClusterServerHealthPieChart) fm
            .findFragmentById(R.id.server_health_chart_fragment);

    if (healthPieChart != null)
        healthPieChart.update(result);

    ClusterServerStatePieChart statePieChart = (ClusterServerStatePieChart) fm
            .findFragmentById(R.id.server_state_chart_fragment);

    if (statePieChart != null)
        statePieChart.update(result);

    LinearLayout tableContainer = (LinearLayout) DisplayClusterActivity.this.findViewById(R.id.data_container);

    TableLayout summaryTable = new TableLayout(DisplayClusterActivity.this);
    tableContainer.addView(summaryTable);

    summaryTable.addView(getRow(R.string.cluster_name, result.getName()));

    for (ClusterServer server : result.getServers()) {
        tableContainer.addView(getSeparatorRow());
        tableContainer.addView(getServerTable(server));
    }
}

From source file:com.jeffreyawest.weblogic.monitor.activity.display.DisplayClusterActivity.java

private View getServerTable(ClusterServer server) {

    TableLayout instanceTable = new TableLayout(DisplayClusterActivity.this);

    instanceTable.addView(getRow(R.string.server_name, server.getName()));
    instanceTable.addView(getRow(R.string.cluster_master, server.getClusterMaster()));
    instanceTable.addView(getRow(R.string.server_health,
            server.getHealth() == null ? getResources().getString(R.string.fragments_received)
                    : server.getHealth().toString()));
    instanceTable.addView(getRow(R.string.dropout_frequency, server.getDropOutFrequency()));
    instanceTable.addView(getRow(R.string.fragments_sent, server.getFragmentsSentCount()));
    instanceTable.addView(getRow(R.string.fragments_received, server.getFragmentsReceivedCount()));

    return instanceTable;
}

From source file:nz.ac.auckland.lablet.script.SheetGroupLayoutParameters.java

@Override
public View buildLayout(Context context, Fragment parentFragment) {
    layout = new TableLayout(context);
    layout.setStretchAllColumns(true);//  w  ww . j  a va  2 s.  c  om
    row = new TableRow(context);
    layout.addView(row);

    for (int i = 0; i < items.size(); i++)
        add(context, parentFragment, items.get(i), i == items.size() - 1);

    return layout;
}

From source file:com.example.diplimadoapp.SuperAwesomeCardFragment.java

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

    LayoutParams params = new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);

    FrameLayout fl = new FrameLayout(getActivity());
    fl.setLayoutParams(params);/*from  w w  w  .j  av a 2 s  .c o m*/

    final int margin = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 8,
            getResources().getDisplayMetrics());

    switch (position) {
    case 0:

        LinearLayout ll = new LinearLayout(getActivity());
        ll.setLayoutParams(new FrameLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
        ll.setOrientation(LinearLayout.VERTICAL);

        ImageView iv = new ImageView(getActivity());
        iv.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, 1020));
        //iv.setLayoutParams(new  LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT));
        iv.setMaxHeight(520);
        iv.setImageResource(R.drawable.contact);
        ll.addView(iv);

        TableLayout tl = new TableLayout(getActivity());
        tl.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));

        TableRow tr = new TableRow(getActivity());
        tr.setLayoutParams(new TableLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
        tr.setGravity(Gravity.FILL_HORIZONTAL);
        tr.setPadding(5, 5, 5, 5);

        List<RssItem> lecturaitems = null;
        try {
            // Create RSS reader
            RssReader rssReader = new RssReader(
                    "http://www.senalradionica.gov.co/index.php/home/articulos/itemlist?format=feed");
            // Get a ListView from main view
            //ListView itcItems = (ListView) findViewById(R.id.listMainView);

            lecturaitems = rssReader.getItems();

        } catch (Exception e) {
            Log.e("Diplomado App Reader", e.getMessage());
        }

        TextView v1 = new TextView(getActivity());
        params.setMargins(margin, margin, margin, margin);
        v1.setLayoutParams(new TableRow.LayoutParams(0, LayoutParams.WRAP_CONTENT, 2));
        v1.setGravity(Gravity.CENTER);
        v1.setBackgroundResource(R.drawable.background_card);
        if (lecturaitems != null) {
            v1.setText(lecturaitems.get(0).getTitle());
            String urlnoticia = lecturaitems.get(0).getLink();
            v1.setOnClickListener(new NoticiaDestacadaOnClickListener(urlnoticia));
        } else {
            v1.setText("No Registra nuevas noticias");
        }

        tr.addView(v1);

        ImageButton ib = new ImageButton(getActivity());
        ib.setLayoutParams(new TableRow.LayoutParams(0, LayoutParams.WRAP_CONTENT, 1));
        ib.setImageResource(R.drawable.facebook);

        ib.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                Intent myWebLink = new Intent(android.content.Intent.ACTION_VIEW);
                myWebLink.setData(Uri.parse("http://www.facebook.com"));
                startActivity(myWebLink);
            }
        });

        tr.addView(ib);

        ImageButton ib2 = new ImageButton(getActivity());
        ib2.setLayoutParams(new TableRow.LayoutParams(0, LayoutParams.WRAP_CONTENT, 1));
        ib2.setImageResource(R.drawable.twitter);

        ib2.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                Intent myWebLink = new Intent(android.content.Intent.ACTION_VIEW);
                myWebLink.setData(Uri.parse("http://www.twitter.com"));
                startActivity(myWebLink);
            }
        });

        tr.addView(ib2);

        ImageButton ib3 = new ImageButton(getActivity());
        ib3.setLayoutParams(new TableRow.LayoutParams(0, LayoutParams.WRAP_CONTENT, 1));
        ib3.setImageResource(R.drawable.youtube);

        ib3.setOnClickListener(new OnClickListener() {
            public void onClick(View v) {
                Intent myWebLink = new Intent(android.content.Intent.ACTION_VIEW);
                myWebLink.setData(Uri.parse("http://www.youtube.com"));
                startActivity(myWebLink);
            }
        });

        tr.addView(ib3);

        tl.addView(tr);

        ll.addView(tl);

        fl.addView(ll);

        break;

    case 1:

        LinearLayout ll2 = new LinearLayout(getActivity());
        ll2.setLayoutParams(new FrameLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
        ll2.setOrientation(LinearLayout.VERTICAL);

        TableLayout tl2 = new TableLayout(getActivity());
        tl2.setLayoutParams(
                new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));

        TableRow tr2 = new TableRow(getActivity());
        tr2.setLayoutParams(new TableLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
        tr2.setGravity(Gravity.FILL_HORIZONTAL);
        tr2.setPadding(5, 5, 5, 5);

        TextView v0 = new TextView(getActivity());
        params.setMargins(margin, margin, margin, margin);
        v0.setLayoutParams(new TableRow.LayoutParams(0, LayoutParams.WRAP_CONTENT, 2));
        v0.setGravity(Gravity.CENTER);
        v0.setText("Acusticos Radionoca. Lunes a Viernes 8:00 a.m. - 9:00 a.m.");
        tr2.addView(v0);

        ImageButton ib20 = new ImageButton(getActivity());
        ib20.setLayoutParams(new TableRow.LayoutParams(0, LayoutParams.WRAP_CONTENT, 1));
        ib20.setImageResource(R.drawable.pacusticos);
        ib20.setBackgroundDrawable(null);

        tr2.addView(ib20);

        tl2.addView(tr2);

        TableRow tr3 = new TableRow(getActivity());
        tr3.setLayoutParams(new TableLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
        tr3.setGravity(Gravity.FILL_HORIZONTAL);
        tr3.setPadding(5, 5, 5, 5);

        TextView v03 = new TextView(getActivity());
        params.setMargins(margin, margin, margin, margin);
        v03.setLayoutParams(new TableRow.LayoutParams(0, LayoutParams.WRAP_CONTENT, 2));
        v03.setGravity(Gravity.CENTER);
        v03.setText("Acusticos Radionoca. Lunes a Viernes 8:00 a.m. - 9:00 a.m.");
        tr3.addView(v03);

        ImageButton ib30 = new ImageButton(getActivity());
        ib30.setLayoutParams(new TableRow.LayoutParams(0, LayoutParams.WRAP_CONTENT, 1));
        ib30.setImageResource(R.drawable.pradionica_lacarta);
        ib30.setBackgroundDrawable(null);

        tr3.addView(ib30);

        tl2.addView(tr3);

        TableRow tr4 = new TableRow(getActivity());
        tr4.setLayoutParams(new TableLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
        tr4.setGravity(Gravity.FILL_HORIZONTAL);
        tr4.setPadding(5, 5, 5, 5);

        TextView v04 = new TextView(getActivity());
        params.setMargins(margin, margin, margin, margin);
        v04.setLayoutParams(new TableRow.LayoutParams(0, LayoutParams.WRAP_CONTENT, 2));
        v04.setGravity(Gravity.CENTER);
        v04.setText("Acusticos Radionoca. Lunes a Viernes 8:00 a.m. - 9:00 a.m.");
        tr4.addView(v04);

        tl2.addView(tr4);

        ImageButton ib40 = new ImageButton(getActivity());
        ib40.setLayoutParams(new TableRow.LayoutParams(0, LayoutParams.WRAP_CONTENT, 1));
        ib40.setImageResource(R.drawable.prockeros);
        ib40.setBackgroundDrawable(null);

        tr4.addView(ib40);

        ll2.addView(tl2);

        /*
        VideoView videoView = new VideoView(getActivity());
                
        Uri path = Uri.parse("rtmp://cdns840stu0010.multistream.net:80/rtvcRadionicalive/?pass=|radionica|");
                
        videoView.setVideoURI(path);
        videoView.start(); 
                
        TableRow tr5 =new TableRow(getActivity());
        tr5.setLayoutParams(new TableLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
        tr5.setGravity(Gravity.FILL_HORIZONTAL);
        tr5.setPadding(5,5,5,5);
        tr5.addView(videoView);
                
        ll2.addView(tr5);*/

        fl.addView(ll2);
        break;
    case 2:
        ListView lv = new ListView(getActivity());
        params.setMargins(margin, margin, margin, margin);
        lv.setLayoutParams(params);
        lv.setLayoutParams(params);
        lv.setBackgroundResource(R.drawable.background_card);
        try {
            // Create RSS reader
            RssReader rssReader = new RssReader(
                    "http://www.senalradionica.gov.co/index.php/home/articulos/itemlist?format=feed");
            // Get a ListView from main view
            //ListView itcItems = (ListView) findViewById(R.id.listMainView);

            List<RssItem> lecturaitems2 = rssReader.getItems();
            // Create a list adapter
            ArrayAdapter<RssItem> adapter = new ArrayAdapter<RssItem>(getActivity(),
                    android.R.layout.simple_list_item_1, lecturaitems2);
            // Set list adapter for the ListView
            lv.setAdapter(adapter);

            // Set list view item click listener
            lv.setOnItemClickListener(new ListListener(lecturaitems2, getActivity()));

        } catch (Exception e) {
            Log.e("Diplomado App Reader", e.getMessage());
        }
        fl.addView(lv);
        break;
    }

    return fl;
}

From source file:com.mikecorrigan.trainscorekeeper.FragmentSummary.java

@SuppressLint("NewApi")
@Override//w w w. jav  a2  s. com
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    Log.vc(VERBOSE, TAG, "onCreateView: inflater=" + inflater + ", container=" + container
            + ", savedInstanceState=" + Utils.bundleToString(savedInstanceState));

    View rootView = inflater.inflate(R.layout.fragment_summary, container, false);

    final MainActivity activity = (MainActivity) getActivity();
    final Context context = activity;
    final Resources resources = context.getResources();

    // Get the model and attach a listener.
    game = activity.getGame();
    if (game != null) {
        game.addListener(mGameListener);
    }

    players = activity.getPlayers();

    // Get resources.
    String[] playerNames = resources.getStringArray(R.array.playerNames);

    TypedArray drawablesArray = resources.obtainTypedArray(R.array.playerDrawables);

    TypedArray playerTextColorsArray = resources.obtainTypedArray(R.array.playerTextColors);
    int[] playerTextColorsIds = new int[playerTextColorsArray.length()];
    for (int i = 0; i < playerTextColorsArray.length(); i++) {
        playerTextColorsIds[i] = playerTextColorsArray.getResourceId(i, -1);
    }

    // Get root view.
    ScrollView scrollView = (ScrollView) rootView.findViewById(R.id.scroll_view);

    // Create table.
    tableLayout = new TableLayout(context);
    TableLayout.LayoutParams tableLayoutParams = new TableLayout.LayoutParams(LayoutParams.MATCH_PARENT,
            LayoutParams.WRAP_CONTENT);
    tableLayout.setLayoutParams(tableLayoutParams);
    scrollView.addView(tableLayout);

    // Add header.
    {
        TableRow row = new TableRow(context);
        row.setLayoutParams(new TableRow.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
        tableLayout.addView(row);

        TextView tv = new TextView(context);
        tv.setGravity(Gravity.CENTER);
        tv.setPadding(10, 10, 10, 10);
        tv.setText(resources.getString(R.string.player));
        tv.setTypeface(null, Typeface.BOLD);
        row.addView(tv);

        tv = new TextView(context);
        tv.setGravity(Gravity.CENTER);
        tv.setPadding(10, 10, 10, 10);
        tv.setText(resources.getString(R.string.trains));
        tv.setTypeface(null, Typeface.BOLD);
        row.addView(tv);

        tv = new TextView(context);
        tv.setGravity(Gravity.CENTER);
        tv.setPadding(10, 10, 10, 10);
        tv.setText(resources.getString(R.string.contracts));
        tv.setTypeface(null, Typeface.BOLD);
        row.addView(tv);

        tv = new TextView(context);
        tv.setGravity(Gravity.CENTER);
        tv.setPadding(10, 10, 10, 10);
        tv.setText(resources.getString(R.string.bonuses));
        tv.setTypeface(null, Typeface.BOLD);
        row.addView(tv);

    }

    // Add rows.
    for (int i = 0; i < players.getNum(); i++) {
        TableRow row = new TableRow(context);
        row.setLayoutParams(new TableRow.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT));
        tableLayout.addView(row);

        ToggleButton toggleButton = new ToggleButton(context);
        toggleButton.setGravity(Gravity.CENTER);
        toggleButton.setPadding(10, 10, 10, 10);
        toggleButton.setText(playerNames[i]);
        toggleButton.setClickable(false);
        Drawable drawable = drawablesArray.getDrawable(i);
        int sdk = android.os.Build.VERSION.SDK_INT;
        if (sdk < android.os.Build.VERSION_CODES.JELLY_BEAN) {
            toggleButton.setBackgroundDrawable(drawable);
        } else {
            toggleButton.setBackground(drawable);
        }
        toggleButton.setTextColor(resources.getColor(playerTextColorsIds[i]));
        row.addView(toggleButton);

        TextView tv = new TextView(context);
        tv.setGravity(Gravity.CENTER);
        tv.setPadding(10, 10, 10, 10);
        row.addView(tv);

        tv = new TextView(context);
        tv.setGravity(Gravity.CENTER);
        tv.setPadding(10, 10, 10, 10);
        row.addView(tv);

        tv = new TextView(context);
        tv.setGravity(Gravity.CENTER);
        tv.setPadding(10, 10, 10, 10);
        row.addView(tv);

    }

    Bundle args = getArguments();
    if (args == null) {
        Log.e(TAG, "onCreateView: missing arguments");
        return rootView;
    }

    drawablesArray.recycle();
    playerTextColorsArray.recycle();

    // final int index = args.getInt(ARG_INDEX);
    // final String tabSpec = args.getString(ARG_TAB_SPEC);

    return rootView;
}

From source file:edu.ksu.cs.a4vm.bse.MorphologyCount.java

@Override
public void onResume() {
    super.onResume();
    test = "Resume called...";
    final MediaPlayer btnChangeSound = MediaPlayer.create(getApplicationContext(), R.raw.button_changed);
    final MediaPlayer limitRchdSound = MediaPlayer.create(getApplicationContext(), R.raw.limit_reached);
    initVals = (HashSet<String>) SharedPrefUtil.getValue(getApplicationContext(),
            Constant.PREFS_BULL_MORPHOLOGY_INFO, morphKey);
    /*morphologyLabels = (HashSet<String>) SharedPrefUtil.getValue(getApplicationContext(),
        Constant.PREFS_FILE_MORPH_INFO,Constant.KEY_MORPHOLOGY);*/
    morphologyLabels = (HashSet<String>) SharedPrefUtil.getValue(getApplicationContext(),
            Constant.PREFS_GRP_MORPH_CONFIG, grpKey);
    TableLayout table = new TableLayout(this);
    FrameLayout.LayoutParams lp = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
            ViewGroup.LayoutParams.MATCH_PARENT);
    table.setLayoutParams(lp);/* w ww . j  a  v a 2 s.c om*/
    table.setShrinkAllColumns(true);
    table.setStretchAllColumns(true);

    TableLayout.LayoutParams rowLp = new TableLayout.LayoutParams(0, ViewGroup.LayoutParams.MATCH_PARENT, 0.5f);
    TableRow.LayoutParams cellLp = new TableRow.LayoutParams(0, ViewGroup.LayoutParams.MATCH_PARENT, 1.0f);

    TableRow.LayoutParams cell1Lp = new TableRow.LayoutParams(60, 120, 1.0f);

    if (initVals != null) {
        for (String Val : initVals) {
            String[] values = Val.split("=");
            if (values != null && values.length == 2 && values[0].equalsIgnoreCase("Normal")) {
                NormalCount = Integer.valueOf(values[1].trim().substring(0, values[1].trim().indexOf("(")));
                NormalProp = Double.valueOf(values[1].trim().substring(values[1].trim().indexOf("(") + 1,
                        values[1].trim().indexOf("%")));
            } else if (morphologyLabels != null) {
                for (String label : morphologyLabels) {
                    String[] lbls = label.split("=");
                    if (lbls != null && lbls.length == 2 && lbls[1].equalsIgnoreCase(values[0])) {
                        if (lbls[0].equalsIgnoreCase("Morphology Field 2")) {
                            Lb2Count = Integer
                                    .valueOf(values[1].trim().substring(0, values[1].trim().indexOf("(")));
                            Lb2Prop = Double.valueOf(values[1].trim().substring(
                                    values[1].trim().indexOf("(") + 1, values[1].trim().indexOf("%")));
                        } else if (lbls[0].equalsIgnoreCase("Morphology Field 3")) {
                            Lb3Count = Integer
                                    .valueOf(values[1].trim().substring(0, values[1].trim().indexOf("(")));
                            Lb3Prop = Double.valueOf(values[1].trim().substring(
                                    values[1].trim().indexOf("(") + 1, values[1].trim().indexOf("%")));
                        } else if (lbls[0].equalsIgnoreCase("Morphology Field 4")) {
                            Lb4Count = Integer
                                    .valueOf(values[1].trim().substring(0, values[1].trim().indexOf("(")));
                            Lb4Prop = Double.valueOf(values[1].trim().substring(
                                    values[1].trim().indexOf("(") + 1, values[1].trim().indexOf("%")));
                        } else if (lbls[0].equalsIgnoreCase("Morphology Field 5")) {
                            Lb5Count = Integer
                                    .valueOf(values[1].trim().substring(0, values[1].trim().indexOf("(")));
                            Lb5Prop = Double.valueOf(values[1].trim().substring(
                                    values[1].trim().indexOf("(") + 1, values[1].trim().indexOf("%")));
                        } else if (lbls[0].equalsIgnoreCase("Morphology Field 6")) {
                            Lb6Count = Integer
                                    .valueOf(values[1].trim().substring(0, values[1].trim().indexOf("(")));
                            Lb6Prop = Double.valueOf(values[1].trim().substring(
                                    values[1].trim().indexOf("(") + 1, values[1].trim().indexOf("%")));
                        } else if (lbls[0].equalsIgnoreCase("Morphology Field 7")) {
                            Lb7Count = Integer
                                    .valueOf(values[1].trim().substring(0, values[1].trim().indexOf("(")));
                            Lb7Prop = Double.valueOf(values[1].trim().substring(
                                    values[1].trim().indexOf("(") + 1, values[1].trim().indexOf("%")));
                        } else if (lbls[0].equalsIgnoreCase("Morphology Field 8")) {
                            Lb8Count = Integer
                                    .valueOf(values[1].trim().substring(0, values[1].trim().indexOf("(")));
                            Lb8Prop = Double.valueOf(values[1].trim().substring(
                                    values[1].trim().indexOf("(") + 1, values[1].trim().indexOf("%")));
                        }
                    }
                }
            }
        }
    }

    Constant.sum = NormalCount + Lb2Count + Lb3Count + Lb4Count + Lb5Count + Lb6Count + Lb7Count + Lb8Count;

    row = new TableRow(this);
    btn1 = new Button(this);
    btn1.setId(R.id.button1);
    btn1.setText("Normal:" + NormalCount + "(" + String.format("%.2f", NormalProp) + "%)");
    btn1.setBackground(ContextCompat.getDrawable(getApplicationContext(), R.drawable.button));
    btn1.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.white));
    row.addView(btn1, cellLp);
    table.addView(row, rowLp);
    setContentView(table);
    if (morphologyLabels != null) {
        Iterator<String> it;

        TableRow row2 = new TableRow(this);
        TableRow row3 = new TableRow(this);
        TableRow row4 = new TableRow(this);
        TableRow row5 = new TableRow(this);

        it = morphologyLabels.iterator();
        while (it.hasNext()) {
            String label = it.next();
            String text[] = label.split("=");
            if (label.contains("Morphology Field 2")) {
                btn2 = new Button(this);
                btn2.setId(R.id.button2);
                if (text != null && text.length == 2) {
                    btn2.setText(text[1] + ":" + Lb2Count + "(" + String.format("%.2f", Lb2Prop) + "%)");
                }
                btn2.setBackground(ContextCompat.getDrawable(getApplicationContext(), R.drawable.button2));
                btn2.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.white));
                btn2.setHeight(300);
                row2.addView(btn2);
            } else if (label.contains("Morphology Field 4")) {
                btn4 = new Button(this);
                btn4.setId(R.id.button4);
                if (text != null && text.length == 2) {
                    btn4.setText(text[1] + ":" + Lb4Count + "(" + String.format("%.2f", Lb4Prop) + "%)");
                }
                btn4.setBackground(ContextCompat.getDrawable(getApplicationContext(), R.drawable.button4));
                btn4.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.white));
                btn4.setHeight(300);
                row3.addView(btn4);
            } else if (label.contains("Morphology Field 6")) {
                btn6 = new Button(this);
                btn6.setId(R.id.button6);
                if (text != null && text.length == 2) {
                    btn6.setText(text[1] + ":" + Lb6Count + "(" + String.format("%.2f", Lb6Prop) + "%)");
                }
                btn6.setBackground(ContextCompat.getDrawable(getApplicationContext(), R.drawable.button6));
                btn6.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.white));
                btn6.setHeight(300);
                row4.addView(btn6);
            } else if (label.contains("Morphology Field 8")) {
                btn8 = new Button(this);
                btn8.setId(R.id.button8);
                if (text != null && text.length == 2) {
                    btn8.setText(text[1] + ":" + Lb8Count + "(" + String.format("%.2f", Lb8Prop) + "%)");
                }
                btn8.setBackground(ContextCompat.getDrawable(getApplicationContext(), R.drawable.button8));
                btn8.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.white));
                //btn = new Button(this);
                btn8.setHeight(300);
                row5.addView(btn8);
                //row5.addView(btn);
            }
        }

        it = morphologyLabels.iterator();
        while (it.hasNext()) {
            String label = it.next();
            String text[] = label.split("=");
            if (label.contains("Limit")) {
                if (text != null && text.length == 2) {
                    limit = Integer.valueOf(text[1]);
                }
            } else if (label.contains("Morphology Field 3")) {
                btn3 = new Button(this);
                btn3.setId(R.id.button3);
                if (text != null && text.length == 2) {
                    btn3.setText(text[1] + ":" + Lb3Count + "(" + String.format("%.2f", Lb3Prop) + "%)");
                }
                btn3.setBackground(ContextCompat.getDrawable(getApplicationContext(), R.drawable.button3));
                btn3.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.white));
                btn3.setHeight(300);
                row2.addView(btn3);
            } else if (label.contains("Morphology Field 5")) {
                btn5 = new Button(this);
                btn5.setId(R.id.button5);
                if (text != null && text.length == 2) {
                    btn5.setText(text[1] + ":" + Lb5Count + "(" + String.format("%.2f", Lb5Prop) + "%)");
                }
                btn5.setBackground(ContextCompat.getDrawable(getApplicationContext(), R.drawable.button5));
                btn5.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.white));
                btn5.setHeight(300);
                row3.addView(btn5);
            } else if (label.contains("Morphology Field 7")) {
                btn7 = new Button(this);
                btn7.setId(R.id.button7);
                if (text != null && text.length == 2) {
                    btn7.setText(text[1] + ":" + Lb7Count + "(" + String.format("%.2f", Lb7Prop) + "%)");
                }
                btn7.setBackground(ContextCompat.getDrawable(getApplicationContext(), R.drawable.button7));
                btn7.setTextColor(ContextCompat.getColor(getApplicationContext(), R.color.white));
                btn7.setHeight(300);
                row4.addView(btn7);
            }

        }

        table.addView(row2, rowLp);
        table.addView(row3, rowLp);
        table.addView(row4, rowLp);
        table.addView(row5, rowLp);

    }

    row = new TableRow(this);

    btn = new Button(this);
    btn.setId(R.id.button);
    btn.setText("Edit Morphology Counts");
    btn.setGravity(Gravity.CENTER);
    row.addView(btn, cell1Lp);

    tv = new TextView(this);
    tv.setId(R.id.totals);
    tv.setText("Total Count:" + Constant.sum);
    tv.setGravity(Gravity.CENTER);
    row.addView(tv, cell1Lp);
    //table.addView(row, rowLp);
    //setContentView(table);

    //row = new TableRow(this);

    table.addView(row, rowLp);
    setContentView(table);

    //initializing morphology counts
    if (initVals == null) {
        morphologyCounts = new HashSet<String>();
        if (btn1 != null) {
            String initEntry = btn1.getText().toString().trim().replace(":", "=");
            morphologyCounts.add(initEntry);
        }
        if (btn2 != null) {
            String initEntry = btn2.getText().toString().trim().replace(":", "=");
            morphologyCounts.add(initEntry);
        }
        if (btn3 != null) {
            String initEntry = btn3.getText().toString().trim().replace(":", "=");
            morphologyCounts.add(initEntry);
        }
        if (btn4 != null) {
            String initEntry = btn4.getText().toString().trim().replace(":", "=");
            morphologyCounts.add(initEntry);
        }
        if (btn5 != null) {
            String initEntry = btn5.getText().toString().trim().replace(":", "=");
            morphologyCounts.add(initEntry);
        }
        if (btn6 != null) {
            String initEntry = btn6.getText().toString().trim().replace(":", "=");
            morphologyCounts.add(initEntry);
        }
        if (btn7 != null) {
            String initEntry = btn7.getText().toString().trim().replace(":", "=");
            morphologyCounts.add(initEntry);
        }
        if (btn8 != null) {
            String initEntry = btn8.getText().toString().trim().replace(":", "=");
            morphologyCounts.add(initEntry);
        }
    } else {
        morphologyCounts = new HashSet<String>();
        for (String initVal : initVals) {
            morphologyCounts.add(initVal);
        }
    }

    if (btn != null) {
        btn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //SharedPrefUtil.saveGroup(getApplicationContext(),Constant.PREFS_BULL_MORPHOLOGY_INFO,morphKey,morphologyCounts);
                Intent gotoEditCount = new Intent(getApplicationContext(), EditMorphologyCounts.class);
                gotoEditCount.putExtra("morphKey", morphKey);
                startActivity(gotoEditCount);
            }
        });
    }
    if (btn1 != null) {
        btn1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //final MediaPlayer btnChangeSound = MediaPlayer.create(getApplicationContext(),R.raw.button_changed);
                if (currentButton == null)
                    currentButton = "btn1";
                else {
                    if (!"btn1".equalsIgnoreCase(currentButton)) {
                        //make sound
                        btnChangeSound.start();
                        currentButton = "btn1";
                    }
                }
                try {
                    String[] btnStrings = btn1.getText().toString().trim().split(":");
                    String btnLbl = btnStrings[0].trim();
                    String btnCount = btnStrings[1].trim().substring(0, btnStrings[1].trim().indexOf("("));
                    String btnprop = btnStrings[1].trim().substring(btnStrings[1].trim().indexOf("(") + 1,
                            btnStrings[1].trim().indexOf("%"));

                    NormalCount = Integer.valueOf(btnCount);
                    NormalProp = Double.valueOf(btnprop);
                    if (Constant.sum < limit) {
                        String oldTxt = btnLbl + "=" + NormalCount + "(" + String.format("%.2f", NormalProp)
                                + "%" + ")";
                        morphologyCounts.remove(oldTxt);
                        NormalCount = NormalCount + 1;
                        Constant.sum = Constant.sum + 1;
                        NormalProp = (NormalCount * 100.0) / Constant.sum;
                        String newTxt = btnLbl + ":" + NormalCount + "(" + String.format("%.2f", NormalProp)
                                + "%" + ")";
                        btn1.setText(newTxt);
                        newTxt = btnLbl + "=" + NormalCount + "(" + String.format("%.2f", NormalProp) + "%"
                                + ")";
                        morphologyCounts.add(newTxt);
                    } else if (Constant.sum == limit) {
                        limitRchdSound.start();
                        Constant.sum++;
                    }

                    if (Constant.sum < limit)
                        tv.setText("Total Count:" + Constant.sum);
                    else
                        tv.setText("Total Count:" + limit);
                } catch (Exception e) {
                    e.printStackTrace();
                    Toast.makeText(getApplicationContext(), "Error occured. Restart and try again",
                            Toast.LENGTH_SHORT).show();
                }

            }
        });
    }

    if (btn2 != null) {
        tv.setText("Total Count:" + Constant.sum);
        btn2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //final MediaPlayer btnChangeSound = MediaPlayer.create(getApplicationContext(),R.raw.button_changed);
                if (currentButton == null)
                    currentButton = "btn2";
                else {
                    if (!"btn2".equalsIgnoreCase(currentButton)) {
                        //make sound
                        btnChangeSound.start();
                        currentButton = "btn2";
                    }
                }

                try {
                    String[] btnStrings = btn2.getText().toString().trim().split(":");
                    String btnLbl = btnStrings[0].trim();
                    String btnCount = btnStrings[1].trim().substring(0, btnStrings[1].trim().indexOf("("));
                    String btnprop = btnStrings[1].trim().substring(btnStrings[1].trim().indexOf("(") + 1,
                            btnStrings[1].trim().indexOf("%"));

                    Lb2Count = Integer.valueOf(btnCount);
                    Lb2Prop = Double.valueOf(btnprop);
                    if (Constant.sum < limit) {
                        String oldTxt = btnLbl + "=" + Lb2Count + "(" + String.format("%.2f", Lb2Prop) + "%"
                                + ")";
                        morphologyCounts.remove(oldTxt);
                        Lb2Count = Lb2Count + 1;
                        Constant.sum = Constant.sum + 1;
                        Lb2Prop = (Lb2Count * 100.0) / Constant.sum;
                        String newTxt = btnLbl + ":" + Lb2Count + "(" + String.format("%.2f", Lb2Prop) + "%"
                                + ")";
                        btn2.setText(newTxt);
                        newTxt = btnLbl + "=" + Lb2Count + "(" + String.format("%.2f", Lb2Prop) + "%" + ")";
                        morphologyCounts.add(newTxt);
                    } else if (Constant.sum == limit) {
                        limitRchdSound.start();
                        Constant.sum++;
                    }

                    if (Constant.sum < limit)
                        tv.setText("Total Count:" + Constant.sum);
                    else
                        tv.setText("Total Count:" + limit);
                } catch (Exception e) {
                    e.printStackTrace();
                    Toast.makeText(getApplicationContext(), "Error occured. Restart and try again",
                            Toast.LENGTH_SHORT).show();
                }
            }
        });
    }
    if (btn3 != null) {
        btn3.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (currentButton == null)
                    currentButton = "btn3";
                else {
                    if (!"btn3".equalsIgnoreCase(currentButton)) {
                        //make sound
                        btnChangeSound.start();
                        currentButton = "btn3";
                    }
                }

                try {
                    String[] btnStrings = btn3.getText().toString().trim().split(":");
                    String btnLbl = btnStrings[0].trim();
                    String btnCount = btnStrings[1].trim().substring(0, btnStrings[1].trim().indexOf("("));
                    String btnprop = btnStrings[1].trim().substring(btnStrings[1].trim().indexOf("(") + 1,
                            btnStrings[1].trim().indexOf("%"));

                    Lb3Count = Integer.valueOf(btnCount);
                    Lb3Prop = Double.valueOf(btnprop);
                    if (Constant.sum < limit) {
                        String oldTxt = btnLbl + "=" + Lb3Count + "(" + String.format("%.2f", Lb3Prop) + "%"
                                + ")";
                        morphologyCounts.remove(oldTxt);
                        Lb3Count = Lb3Count + 1;
                        Constant.sum = Constant.sum + 1;
                        Lb3Prop = (Lb3Count * 100.0) / Constant.sum;
                        String newTxt = btnLbl + ":" + Lb3Count + "(" + String.format("%.2f", Lb3Prop) + "%"
                                + ")";
                        btn3.setText(newTxt);
                        newTxt = btnLbl + "=" + Lb3Count + "(" + String.format("%.2f", Lb3Prop) + "%" + ")";
                        morphologyCounts.add(newTxt);
                    } else if (Constant.sum == limit) {
                        limitRchdSound.start();
                        Constant.sum++;
                    }

                    if (Constant.sum < limit)
                        tv.setText("Total Count:" + Constant.sum);
                    else
                        tv.setText("Total Count:" + limit);
                } catch (Exception e) {
                    e.printStackTrace();
                    Toast.makeText(getApplicationContext(), "Error occured. Restart and try again",
                            Toast.LENGTH_SHORT).show();
                }
            }
        });
    }
    if (btn4 != null) {
        btn4.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (currentButton == null)
                    currentButton = "btn4";
                else {
                    if (!"btn4".equalsIgnoreCase(currentButton)) {
                        //make sound
                        btnChangeSound.start();
                        currentButton = "btn4";
                    }
                }

                try {
                    String[] btnStrings = btn4.getText().toString().trim().split(":");
                    String btnLbl = btnStrings[0].trim();
                    String btnCount = btnStrings[1].trim().substring(0, btnStrings[1].trim().indexOf("("));
                    String btnprop = btnStrings[1].trim().substring(btnStrings[1].trim().indexOf("(") + 1,
                            btnStrings[1].trim().indexOf("%"));

                    Lb4Count = Integer.valueOf(btnCount);
                    Lb4Prop = Double.valueOf(btnprop);
                    if (Constant.sum < limit) {
                        String oldTxt = btnLbl + "=" + Lb4Count + "(" + String.format("%.2f", Lb4Prop) + "%"
                                + ")";
                        morphologyCounts.remove(oldTxt);
                        Lb4Count = Lb4Count + 1;
                        Constant.sum = Constant.sum + 1;
                        Lb4Prop = (Lb4Count * 100.0) / Constant.sum;
                        String newTxt = btnLbl + ":" + Lb4Count + "(" + String.format("%.2f", Lb4Prop) + "%"
                                + ")";
                        btn4.setText(newTxt);
                        newTxt = btnLbl + "=" + Lb4Count + "(" + String.format("%.2f", Lb4Prop) + "%" + ")";
                        morphologyCounts.add(newTxt);
                    } else if (Constant.sum == limit) {
                        limitRchdSound.start();
                        Constant.sum++;
                    }

                    if (Constant.sum < limit)
                        tv.setText("Total Count:" + Constant.sum);
                    else
                        tv.setText("Total Count:" + limit);
                } catch (Exception e) {
                    e.printStackTrace();
                    Toast.makeText(getApplicationContext(), "Error occured. Restart and try again",
                            Toast.LENGTH_SHORT).show();
                }
            }
        });
    }
    if (btn5 != null) {
        btn5.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (currentButton == null)
                    currentButton = "btn5";
                else {
                    if (!"btn5".equalsIgnoreCase(currentButton)) {
                        //make sound
                        btnChangeSound.start();
                        currentButton = "btn5";
                    }
                }

                try {
                    String[] btnStrings = btn5.getText().toString().trim().split(":");
                    String btnLbl = btnStrings[0].trim();
                    String btnCount = btnStrings[1].trim().substring(0, btnStrings[1].trim().indexOf("("));
                    String btnprop = btnStrings[1].trim().substring(btnStrings[1].trim().indexOf("(") + 1,
                            btnStrings[1].trim().indexOf("%"));

                    Lb5Count = Integer.valueOf(btnCount);
                    Lb5Prop = Double.valueOf(btnprop);
                    if (Constant.sum < limit) {
                        String oldTxt = btnLbl + "=" + Lb5Count + "(" + String.format("%.2f", Lb5Prop) + "%"
                                + ")";
                        morphologyCounts.remove(oldTxt);
                        Lb5Count = Lb5Count + 1;
                        Constant.sum = Constant.sum + 1;
                        Lb5Prop = (Lb5Count * 100.0) / Constant.sum;
                        String newTxt = btnLbl + ":" + Lb5Count + "(" + String.format("%.2f", Lb5Prop) + "%"
                                + ")";
                        btn5.setText(newTxt);
                        newTxt = btnLbl + "=" + Lb5Count + "(" + String.format("%.2f", Lb5Prop) + "%" + ")";
                        morphologyCounts.add(newTxt);
                    } else if (Constant.sum == limit) {
                        limitRchdSound.start();
                        Constant.sum++;
                    }

                    if (Constant.sum < limit)
                        tv.setText("Total Count:" + Constant.sum);
                    else
                        tv.setText("Total Count:" + limit);
                } catch (Exception e) {
                    e.printStackTrace();
                    Toast.makeText(getApplicationContext(), "Error occured. Restart and try again",
                            Toast.LENGTH_SHORT).show();
                }
            }
        });
    }
    if (btn6 != null) {
        btn6.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (currentButton == null)
                    currentButton = "btn6";
                else {
                    if (!"btn6".equalsIgnoreCase(currentButton)) {
                        //make sound
                        btnChangeSound.start();
                        currentButton = "btn6";
                    }
                }

                try {
                    String[] btnStrings = btn6.getText().toString().trim().split(":");
                    String btnLbl = btnStrings[0].trim();
                    String btnCount = btnStrings[1].trim().substring(0, btnStrings[1].trim().indexOf("("));
                    String btnprop = btnStrings[1].trim().substring(btnStrings[1].trim().indexOf("(") + 1,
                            btnStrings[1].trim().indexOf("%"));

                    Lb6Count = Integer.valueOf(btnCount);
                    Lb6Prop = Double.valueOf(btnprop);
                    if (Constant.sum < limit) {
                        String oldTxt = btnLbl + "=" + Lb6Count + "(" + String.format("%.2f", Lb6Prop) + "%"
                                + ")";
                        morphologyCounts.remove(oldTxt);
                        Lb6Count = Lb6Count + 1;
                        Constant.sum = Constant.sum + 1;
                        Lb6Prop = (Lb6Count * 100.0) / Constant.sum;
                        String newTxt = btnLbl + ":" + Lb6Count + "(" + String.format("%.2f", Lb6Prop) + "%"
                                + ")";
                        btn6.setText(newTxt);
                        newTxt = btnLbl + "=" + Lb6Count + "(" + String.format("%.2f", Lb6Prop) + "%" + ")";
                        morphologyCounts.add(newTxt);
                    } else if (Constant.sum == limit) {
                        limitRchdSound.start();
                        Constant.sum++;
                    }

                    if (Constant.sum < limit)
                        tv.setText("Total Count:" + Constant.sum);
                    else
                        tv.setText("Total Count:" + limit);
                } catch (Exception e) {
                    e.printStackTrace();
                    Toast.makeText(getApplicationContext(), "Error occured. Restart and try again",
                            Toast.LENGTH_SHORT).show();
                }
            }
        });
    }
    if (btn7 != null) {
        btn7.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (currentButton == null)
                    currentButton = "btn7";
                else {
                    if (!"btn7".equalsIgnoreCase(currentButton)) {
                        //make sound
                        btnChangeSound.start();
                        currentButton = "btn7";
                    }
                }

                try {
                    String[] btnStrings = btn7.getText().toString().trim().split(":");
                    String btnLbl = btnStrings[0].trim();
                    String btnCount = btnStrings[1].trim().substring(0, btnStrings[1].trim().indexOf("("));
                    String btnprop = btnStrings[1].trim().substring(btnStrings[1].trim().indexOf("(") + 1,
                            btnStrings[1].trim().indexOf("%"));

                    Lb7Count = Integer.valueOf(btnCount);
                    Lb7Prop = Double.valueOf(btnprop);
                    if (Constant.sum < limit) {
                        String oldTxt = btnLbl + "=" + Lb7Count + "(" + String.format("%.2f", Lb7Prop) + "%"
                                + ")";
                        morphologyCounts.remove(oldTxt);
                        Lb7Count = Lb7Count + 1;
                        Constant.sum = Constant.sum + 1;
                        Lb7Prop = (Lb7Count * 100.0) / Constant.sum;
                        String newTxt = btnLbl + ":" + Lb7Count + "(" + String.format("%.2f", Lb7Prop) + "%"
                                + ")";
                        btn7.setText(newTxt);
                        newTxt = btnLbl + "=" + Lb7Count + "(" + String.format("%.2f", Lb7Prop) + "%" + ")";
                        morphologyCounts.add(newTxt);
                    } else if (Constant.sum == limit) {
                        limitRchdSound.start();
                        Constant.sum++;
                    }

                    if (Constant.sum < limit)
                        tv.setText("Total Count:" + Constant.sum);
                    else
                        tv.setText("Total Count:" + limit);
                } catch (Exception e) {
                    e.printStackTrace();
                    Toast.makeText(getApplicationContext(), "Error occured. Restart and try again",
                            Toast.LENGTH_SHORT).show();
                }
            }
        });
    }
    if (btn8 != null) {
        btn8.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (currentButton == null)
                    currentButton = "btn8";
                else {
                    if (!"btn8".equalsIgnoreCase(currentButton)) {
                        //make sound
                        btnChangeSound.start();
                        currentButton = "btn8";
                    }
                }

                try {
                    String[] btnStrings = btn8.getText().toString().trim().split(":");
                    String btnLbl = btnStrings[0].trim();
                    String btnCount = btnStrings[1].trim().substring(0, btnStrings[1].trim().indexOf("("));
                    String btnprop = btnStrings[1].trim().substring(btnStrings[1].trim().indexOf("(") + 1,
                            btnStrings[1].trim().indexOf("%"));

                    Lb8Count = Integer.valueOf(btnCount);
                    Lb8Prop = Double.valueOf(btnprop);
                    if (Constant.sum < limit) {
                        String oldTxt = btnLbl + "=" + Lb8Count + "(" + String.format("%.2f", Lb8Prop) + "%"
                                + ")";
                        morphologyCounts.remove(oldTxt);
                        Lb8Count = Lb8Count + 1;
                        Constant.sum = Constant.sum + 1;
                        Lb8Prop = (Lb8Count * 100.0) / Constant.sum;
                        String newTxt = btnLbl + ":" + Lb8Count + "(" + String.format("%.2f", Lb8Prop) + "%"
                                + ")";
                        btn8.setText(newTxt);
                        newTxt = btnLbl + "=" + Lb8Count + "(" + String.format("%.2f", Lb8Prop) + "%" + ")";
                        morphologyCounts.add(newTxt);
                    } else if (Constant.sum == limit) {
                        limitRchdSound.start();
                        Constant.sum++;
                    }

                    if (Constant.sum < limit)
                        tv.setText("Total Count:" + Constant.sum);
                    else
                        tv.setText("Total Count:" + limit);
                } catch (Exception e) {
                    e.printStackTrace();
                    Toast.makeText(getApplicationContext(), "Error occured. Restart and try again",
                            Toast.LENGTH_SHORT).show();
                }
            }
        });
    }

}