单击listview项时,应在浏览器中打开该url,但是在运行该应用程序时,它可以正常运行,但是onclick listview不起作用

时间:2018-07-16 14:59:04

标签: java android listview view adapter

在我的应用中,列表视图很容易填充,但是列表单击不起作用。

该应用程序不会崩溃,也没有错误日志。 当我添加行//lv.setOnItemClickListener((AdapterAdapter.OnItemClickListener)this); ,代码会产生关于addView(View,LayoutParams)的错误,AdapterView不支持。 我曾尝试过不同的解决方案,但其中任何一个都没有用。

这是我的代码:-

My_Adapter.java

     package com.example.android.quakereport;



            public class My_Adapter extends ArrayAdapter<Earthquake_Data>  {


                public My_Adapter(Context context, ArrayList<Earthquake_Data> earthquake_data) {

                    super(context, 0, earthquake_data);
                }

                @Override
                public View getView(int position, View convertView, @NonNull ViewGroup parent) {
                    // Check if the existing view is being reused, otherwise inflate the view
                    View listItemView = convertView;
                    if(listItemView == null) {
                        listItemView = LayoutInflater.from(getContext()).inflate(
                                R.layout.list_item, parent, false);
                    }
                    final Earthquake_Data currentEarthquake = getItem(position);

                    View v = LayoutInflater.from(getContext()).inflate(R.layout.earthquake_activity,parent,false);
                    ListView lv = (ListView) v.findViewById(R.id.list);
                    //lv.setOnItemClickListener((AdapterView.OnItemClickListener) this);

                    lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                        @Override
                        public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
                            assert currentEarthquake != null;
                            String f_url = currentEarthquake.getUrl();
                            Uri uri = Uri.parse(f_url);
                            Intent intent = new Intent(Intent.ACTION_VIEW, uri);
                            getContext().startActivity(intent);
                            }
                        });


                    // Get the {@link AndroidFlavor} object located at this position in the list


                    // Find the TextView in the list_item.xml layout with the ID version_name
                    TextView mag = (TextView) listItemView.findViewById(R.id.magnitude);
                    // Get the version name from the current AndroidFlavor object and
                    // set this text on the name TextView
                    assert currentEarthquake != null;
                    //double test = (currentEarthquake.getMagnitude());
                    String formattedMagnitude = formatMagnitude(currentEarthquake.getMagnitude());

                    // Set the proper background color on the magnitude circle.
                    // Fetch the background from the TextView, which is a GradientDrawable.
                    TextView magnitudeView = (TextView)listItemView.findViewById(R.id.magnitude);
                    GradientDrawable magnitudeCircle = (GradientDrawable) magnitudeView.getBackground();

                    // Get the appropriate background color based on the current earthquake magnitude
                    int magnitudeColor = getMagnitudeColor(currentEarthquake.getMagnitude());

                    // Set the color on the magnitude circle
                    magnitudeCircle.setColor(magnitudeColor);

                    mag.setText(formattedMagnitude);

                    // Find the TextView in the list_item.xml layout with the ID version_number
                    TextView pla = (TextView) listItemView.findViewById(R.id.place);
                    if(currentEarthquake.getPlace().contains("of")){

                        int length = currentEarthquake.getPlace().length();

                        int count = currentEarthquake.getPlace().indexOf("of");
                        String pla1 = currentEarthquake.getPlace().substring(0,count+2).toUpperCase();
                        String pla2 = currentEarthquake.getPlace().substring(count+2,length);
                        String up_place = "<b>"+pla2+"</b>";



                        pla.setText(pla1+"\n"+ Html.fromHtml(up_place));
                    }
                    else{
                        pla.setText("Near\n"+currentEarthquake.getPlace());
                    }
                    // Get the version number from the current AndroidFlavor object and
                    // set this text on the number TextView


                    // Find the ImageView in the list_item.xml layout with the ID list_item_icon
                    TextView dat  = (TextView) listItemView.findViewById(R.id.date);
                    // Get the image resource ID from the current AndroidFlavor object and
                    // set the image to iconView
                    dat.setText(currentEarthquake.getDate());

                    // Return the whole list item layout (containing 2 TextViews and an ImageView)
                    // so that it can be shown in the ListView
                    return listItemView;


                }


                private String formatMagnitude(double magnitude) {
                    DecimalFormat magnitudeFormat = new DecimalFormat("0.0");
                    return magnitudeFormat.format(magnitude);
                }

                private int getMagnitudeColor(double magnitude) {
                    int magnitudeColorResourceId;
                    int magnitudeFloor = (int) Math.floor(magnitude);
                    switch (magnitudeFloor) {
                        case 0:
                        case 1:
                            magnitudeColorResourceId = R.color.magnitude1;
                            break;
                        case 2:
                            magnitudeColorResourceId = R.color.magnitude2;
                            break;
                        case 3:
                            magnitudeColorResourceId = R.color.magnitude3;
                            break;
                        case 4:
                            magnitudeColorResourceId = R.color.magnitude4;
                            break;
                        case 5:
                            magnitudeColorResourceId = R.color.magnitude5;
                            break;
                        case 6:
                            magnitudeColorResourceId = R.color.magnitude6;
                            break;
                        case 7:
                            magnitudeColorResourceId = R.color.magnitude7;
                            break;
                        case 8:
                            magnitudeColorResourceId = R.color.magnitude8;
                            break;
                        case 9:
                            magnitudeColorResourceId = R.color.magnitude9;
                            break;
                        default:
                            magnitudeColorResourceId = R.color.magnitude10plus;
                            break;
                    }
                    return ContextCompat.getColor(getContext(), magnitudeColorResourceId);
                }








    > QueryUtils.java




    package com.example.android.quakereport;



    public final class QueryUtils {

        /** Sample JSON response for a USGS query */
        private static final String SAMPLE_JSON_RESPONSE = "{\"type\":\"FeatureCollection\",\"metadata\":{\"generated\":1462295443000,\"url\":\"http://earthquake.usgs.gov/fdsnws/event/1/query?format=geojson&starttime=2016-01-01&endtime=2016-01-31&minmag=6&limit=10\",\"title\":\"USGS Earthquakes\",\"status\":200,\"api\":\"1.5.2\",\"limit\":10,\"offset\":1,\"count\":10},\"features\":[{\"type\":\"Feature\",\"properties\":{\"mag\":0.2,\"place\":\"88km N of Yelizovo, Russia\",\"time\":1454124312220,\"updated\":1460674294040,\"tz\":720,\"url\":\"http://earthquake.usgs.gov/earthquakes/eventpage/us20004vvx\",\"detail\":\"http://earthquake.usgs.gov/fdsnws/event/1/query?eventid=us20004vvx&format=geojson\",\"felt\":2,\"cdi\":3.4,\"mmi\":5.82,\"alert\":\"green\",\"status\":\"reviewed\",\"tsunami\":1,\"sig\":798,\"net\":\"us\",\"code\":\"20004vvx\",\"ids\":\",at00o1qxho,pt16030050,us20004vvx,gcmt20160130032510,\",\"sources\":\",at,pt,us,gcmt,\",\"types\":\",cap,dyfi,finite-fault,general-link,general-text,geoserve,impact-link,impact-text,losspager,moment-tensor,nearby-cities,origin,phase-data,shakemap,tectonic-summary,\",\"nst\":null,\"dmin\":0.958,\"rms\":1.19,\"gap\":17,\"magType\":\"mww\",\"type\":\"earthquake\",\"title\":\"M 7.2 - 88km N of Yelizovo, Russia\"},\"geometry\":{\"type\":\"Point\",\"coordinates\":[158.5463,53.9776,177]},\"id\":\"us20004vvx\"},\n" +
                "{\"type\":\"Feature\",\"properties\":{\"mag\":1.1,\"place\":\"94km SSE of Taron, Papua New Guinea\",\"time\":1453777820750,\"updated\":1460156775040,\"tz\":600,\"url\":\"http://earthquake.usgs.gov/earthquakes/eventpage/us20004uks\",\"detail\":\"http://earthquake.usgs.gov/fdsnws/event/1/query?eventid=us20004uks&format=geojson\",\"felt\":null,\"cdi\":null,\"mmi\":4.1,\"alert\":\"green\",\"status\":\"reviewed\",\"tsunami\":1,\"sig\":572,\"net\":\"us\",\"code\":\"20004uks\",\"ids\":\",us20004uks,gcmt20160126031023,\",\"sources\":\",us,gcmt,\",\"types\":\",cap,geoserve,losspager,moment-tensor,nearby-cities,origin,phase-data,shakemap,tectonic-summary,\",\"nst\":null,\"dmin\":1.537,\"rms\":0.74,\"gap\":25,\"magType\":\"mww\",\"type\":\"earthquake\",\"title\":\"M 6.1 - 94km SSE of Taron, Papua New Guinea\"},\"geometry\":{\"type\":\"Point\",\"coordinates\":[153.2454,-5.2952,26]},\"id\":\"us20004uks\"},\n" +
                "{\"type\":\"Feature\",\"properties\":{\"mag\":2.3,\"place\":\"50km NNE of Al Hoceima, Morocco\",\"time\":1453695722730,\"updated\":1460156773040,\"tz\":0,\"url\":\"http://earthquake.usgs.gov/earthquakes/eventpage/us10004gy9\",\"detail\":\"http://earthquake.usgs.gov/fdsnws/event/1/query?eventid=us10004gy9&format=geojson\",\"felt\":117,\"cdi\":7.2,\"mmi\":5.28,\"alert\":\"green\",\"status\":\"reviewed\",\"tsunami\":0,\"sig\":695,\"net\":\"us\",\"code\":\"10004gy9\",\"ids\":\",us10004gy9,gcmt20160125042203,\",\"sources\":\",us,gcmt,\",\"types\":\",cap,dyfi,geoserve,impact-text,losspager,moment-tensor,nearby-cities,origin,phase-data,shakemap,tectonic-summary,\",\"nst\":null,\"dmin\":2.201,\"rms\":0.92,\"gap\":20,\"magType\":\"mww\",\"type\":\"earthquake\",\"title\":\"M 6.3 - 50km NNE of Al Hoceima, Morocco\"},\"geometry\":{\"type\":\"Point\",\"coordinates\":[-3.6818,35.6493,12]},\"id\":\"us10004gy9\"},\n" +
                "{\"type\":\"Feature\",\"properties\":{\"mag\":3.1,\"place\":\"86km E of Old Iliamna, Alaska\",\"time\":1453631430230,\"updated\":1460156770040,\"tz\":-540,\"url\":\"http://earthquake.usgs.gov/earthquakes/eventpage/us10004gqp\",\"detail\":\"http://earthquake.usgs.gov/fdsnws/event/1/query?eventid=us10004gqp&format=geojson\",\"felt\":1816,\"cdi\":7.2,\"mmi\":6.6,\"alert\":\"green\",\"status\":\"reviewed\",\"tsunami\":1,\"sig\":1496,\"net\":\"us\",\"code\":\"10004gqp\",\"ids\":\",at00o1gd6r,us10004gqp,ak12496371,gcmt20160124103030,\",\"sources\":\",at,us,ak,gcmt,\",\"types\":\",cap,dyfi,finite-fault,general-link,general-text,geoserve,impact-link,impact-text,losspager,moment-tensor,nearby-cities,origin,phase-data,shakemap,tectonic-summary,trump-origin,\",\"nst\":null,\"dmin\":0.72,\"rms\":2.11,\"gap\":19,\"magType\":\"mww\",\"type\":\"earthquake\",\"title\":\"M 7.1 - 86km E of Old Iliamna, Alaska\"},\"geometry\":{\"type\":\"Point\",\"coordinates\":[-153.4051,59.6363,129]},\"id\":\"us10004gqp\"},\n" +
                "{\"type\":\"Feature\",\"properties\":{\"mag\":4.6,\"place\":\"215km SW of Tomatlan, Mexico\",\"time\":1453399617650,\"updated\":1459963829040,\"tz\":-420,\"url\":\"http://earthquake.usgs.gov/earthquakes/eventpage/us10004g4l\",\"detail\":\"http://earthquake.usgs.gov/fdsnws/event/1/query?eventid=us10004g4l&format=geojson\",\"felt\":11,\"cdi\":2.7,\"mmi\":3.92,\"alert\":\"green\",\"status\":\"reviewed\",\"tsunami\":1,\"sig\":673,\"net\":\"us\",\"code\":\"10004g4l\",\"ids\":\",at00o1bebo,pt16021050,us10004g4l,gcmt20160121180659,\",\"sources\":\",at,pt,us,gcmt,\",\"types\":\",cap,dyfi,geoserve,impact-link,impact-text,losspager,moment-tensor,nearby-cities,origin,phase-data,shakemap,tectonic-summary,\",\"nst\":null,\"dmin\":2.413,\"rms\":0.98,\"gap\":74,\"magType\":\"mww\",\"type\":\"earthquake\",\"title\":\"M 6.6 - 215km SW of Tomatlan, Mexico\"},\"geometry\":{\"type\":\"Point\",\"coordinates\":[-106.9337,18.8239,10]},\"id\":\"us10004g4l\"},\n" +
                "{\"type\":\"Feature\",\"properties\":{\"mag\":5.7,\"place\":\"52km SE of Shizunai, Japan\",\"time\":1452741933640,\"updated\":1459304879040,\"tz\":540,\"url\":\"http://earthquake.usgs.gov/earthquakes/eventpage/us10004ebx\",\"detail\":\"http://earthquake.usgs.gov/fdsnws/event/1/query?eventid=us10004ebx&format=geojson\",\"felt\":51,\"cdi\":5.8,\"mmi\":6.45,\"alert\":\"green\",\"status\":\"reviewed\",\"tsunami\":1,\"sig\":720,\"net\":\"us\",\"code\":\"10004ebx\",\"ids\":\",us10004ebx,pt16014050,at00o0xauk,gcmt20160114032534,\",\"sources\":\",us,pt,at,gcmt,\",\"types\":\",associate,cap,dyfi,geoserve,impact-link,impact-text,losspager,moment-tensor,nearby-cities,origin,phase-data,shakemap,\",\"nst\":null,\"dmin\":0.281,\"rms\":0.98,\"gap\":22,\"magType\":\"mww\",\"type\":\"earthquake\",\"title\":\"M 6.7 - 52km SE of Shizunai, Japan\"},\"geometry\":{\"type\":\"Point\",\"coordinates\":[142.781,41.9723,46]},\"id\":\"us10004ebx\"},\n" +
                "{\"type\":\"Feature\",\"properties\":{\"mag\":6.1,\"place\":\"12km WNW of Charagua, Bolivia\",\"time\":1452741928270,\"updated\":1459304879040,\"tz\":-240,\"url\":\"http://earthquake.usgs.gov/earthquakes/eventpage/us10004ebw\",\"detail\":\"http://earthquake.usgs.gov/fdsnws/event/1/query?eventid=us10004ebw&format=geojson\",\"felt\":3,\"cdi\":2.2,\"mmi\":2.21,\"alert\":\"green\",\"status\":\"reviewed\",\"tsunami\":0,\"sig\":573,\"net\":\"us\",\"code\":\"10004ebw\",\"ids\":\",us10004ebw,gcmt20160114032528,\",\"sources\":\",us,gcmt,\",\"types\":\",cap,dyfi,geoserve,impact-text,losspager,moment-tensor,nearby-cities,origin,phase-data,shakemap,tectonic-summary,\",\"nst\":null,\"dmin\":5.492,\"rms\":1.04,\"gap\":16,\"magType\":\"mww\",\"type\":\"earthquake\",\"title\":\"M 6.1 - 12km WNW of Charagua, Bolivia\"},\"geometry\":{\"type\":\"Point\",\"coordinates\":[-63.3288,-19.7597,582.56]},\"id\":\"us10004ebw\"},\n" +
                "{\"type\":\"Feature\",\"properties\":{\"mag\":7.2,\"place\":\"74km NW of Rumoi, Japan\",\"time\":1452532083920,\"updated\":1459304875040,\"tz\":540,\"url\":\"http://earthquake.usgs.gov/earthquakes/eventpage/us10004djn\",\"detail\":\"http://earthquake.usgs.gov/fdsnws/event/1/query?eventid=us10004djn&format=geojson\",\"felt\":8,\"cdi\":3.4,\"mmi\":3.74,\"alert\":\"green\",\"status\":\"reviewed\",\"tsunami\":0,\"sig\":594,\"net\":\"us\",\"code\":\"10004djn\",\"ids\":\",us10004djn,gcmt20160111170803,\",\"sources\":\",us,gcmt,\",\"types\":\",cap,dyfi,geoserve,impact-text,losspager,moment-tensor,nearby-cities,origin,phase-data,shakemap,tectonic-summary,\",\"nst\":null,\"dmin\":1.139,\"rms\":0.96,\"gap\":33,\"magType\":\"mww\",\"type\":\"earthquake\",\"title\":\"M 6.2 - 74km NW of Rumoi, Japan\"},\"geometry\":{\"type\":\"Point\",\"coordinates\":[141.0867,44.4761,238.81]},\"id\":\"us10004djn\"},\n" +
                "{\"type\":\"Feature\",\"properties\":{\"mag\":8.5,\"place\":\"227km SE of Sarangani, Philippines\",\"time\":1452530285900,\"updated\":1459304874040,\"tz\":480,\"url\":\"http://earthquake.usgs.gov/earthquakes/eventpage/us10004dj5\",\"detail\":\"http://earthquake.usgs.gov/fdsnws/event/1/query?eventid=us10004dj5&format=geojson\",\"felt\":1,\"cdi\":2.7,\"mmi\":7.5,\"alert\":\"green\",\"status\":\"reviewed\",\"tsunami\":1,\"sig\":650,\"net\":\"us\",\"code\":\"10004dj5\",\"ids\":\",at00o0srjp,pt16011050,us10004dj5,gcmt20160111163807,\",\"sources\":\",at,pt,us,gcmt,\",\"types\":\",cap,dyfi,geoserve,impact-link,impact-text,losspager,moment-tensor,nearby-cities,origin,phase-data,shakemap,tectonic-summary,\",\"nst\":null,\"dmin\":3.144,\"rms\":0.72,\"gap\":22,\"magType\":\"mww\",\"type\":\"earthquake\",\"title\":\"M 6.5 - 227km SE of Sarangani, Philippines\"},\"geometry\":{\"type\":\"Point\",\"coordinates\":[126.8621,3.8965,13]},\"id\":\"us10004dj5\"},\n" +
                "{\"type\":\"Feature\",\"properties\":{\"mag\":9,\"place\":\"Pacific-Antarctic Ridge\",\"time\":1451986454620,\"updated\":1459202978040,\"tz\":-540,\"url\":\"http://earthquake.usgs.gov/earthquakes/eventpage/us10004bgk\",\"detail\":\"http://earthquake.usgs.gov/fdsnws/event/1/query?eventid=us10004bgk&format=geojson\",\"felt\":0,\"cdi\":1,\"mmi\":0,\"alert\":\"green\",\"status\":\"reviewed\",\"tsunami\":0,\"sig\":554,\"net\":\"us\",\"code\":\"10004bgk\",\"ids\":\",us10004bgk,gcmt20160105093415,\",\"sources\":\",us,gcmt,\",\"types\":\",cap,dyfi,geoserve,losspager,moment-tensor,nearby-cities,origin,phase-data,shakemap,\",\"nst\":null,\"dmin\":30.75,\"rms\":0.67,\"gap\":71,\"magType\":\"mww\",\"type\":\"earthquake\",\"title\":\"M 6.0 - Pacific-Antarctic Ridge\"},\"geometry\":{\"type\":\"Point\",\"coordinates\":[-136.2603,-54.2906,10]},\"id\":\"us10004bgk\"}],\"bbox\":[-153.4051,-54.2906,10,158.5463,59.6363,582.56]}";
        /**
         * Create a private constructor because no one should ever create a {@link QueryUtils} object.
         * This class is only meant to hold static variables and methods, which can be accessed
         * directly from the class name QueryUtils (and an object instance of QueryUtils is not needed).
         */
        private QueryUtils() {
        }

        /**
         * Return a list of {@link Earthquake_Data} objects that has been built up from
         * parsing a JSON response.
         */
        public static ArrayList<Earthquake_Data> extractEarthquakes() {

            // Create an empty ArrayList that we can start adding earthquakes to
            ArrayList<Earthquake_Data> earthquakes = new ArrayList<>();

            // Try to parse the SAMPLE_JSON_RESPONSE. If there's a problem with the way the JSON
            // is formatted, a JSONException exception object will be thrown.
            // Catch the exception so the app doesn't crash, and print the error message to the logs.
            try  {

                // TODO: Parse the response given by the SAMPLE_JSON_RESPONSE string and
                // build up a list of Earthquake objects with the corresponding data.

                JSONObject json = new JSONObject(SAMPLE_JSON_RESPONSE);
                JSONArray jarray = json.optJSONArray("features");
                for (int i=0;i<jarray.length();i++){
                    JSONObject obj = jarray.getJSONObject(i);
                    JSONObject prop = obj.optJSONObject("properties");

                    double mag1 = prop.optDouble("mag");
                    String place1 = prop.optString("place");
                    long date1 = prop.optLong("time");
                    String url1 = prop.optString("url");

                    Date dateObject = new Date(date1);
                    SimpleDateFormat dateFormatter = new SimpleDateFormat("MMM DD, yyyy");
                    SimpleDateFormat time = new SimpleDateFormat("h:mm a");
                    String dateToDisplay = dateFormatter.format(dateObject);
                    String exact_time = time.format(dateObject);
                    String total = dateToDisplay+"  "+exact_time;


                    earthquakes.add(new Earthquake_Data(mag1,place1,total,url1));
                }

            } catch (JSONException e) {
                // If an error is thrown when executing any of the above statements in the "try" block,
                // catch the exception here, so the app doesn't crash. Print a log message
                // with the message from the exception.
                Log.e("QueryUtils", "Problem parsing the earthquake JSON results", e);
            }

            // Return the list of earthquakes
            return earthquakes;
        }
    }







    > EarthquakeActivity.java







         package com.example.android.quakereport;



            public class EarthquakeActivity extends AppCompatActivity {

                public static final String LOG_TAG = EarthquakeActivity.class.getName();

                @Override
                protected void onCreate(Bundle savedInstanceState) {
                    super.onCreate(savedInstanceState);
                    setContentView(R.layout.earthquake_activity);

                    // Create a fake list of earthquake locations.

                    ArrayList<Earthquake_Data> earthquakes = QueryUtils.extractEarthquakes();


                   /*ArrayList<Earthquake_Data> ed = new ArrayList<>();
                   ed.add(new Earthquake_Data(6,"San Francisco","01-02-2001"));
                    ed.add(new Earthquake_Data(5,"London","019-02-2005"));
                    ed.add(new Earthquake_Data(4,"Tokyo","14-05-2006"));
                    ed.add(new Earthquake_Data(3,"Mexico City","19-08-2008"));
                    ed.add(new Earthquake_Data(2,"Moscow","01-03-2006"));
                    ed.add(new Earthquake_Data(1,"Rio de Janeiro","05-03-195"));
                    ed.add(new Earthquake_Data(9,"Paris","19-07-2018"));*/

                    My_Adapter Adapter = new My_Adapter(this, earthquakes);

                    // Get a reference to the ListView, and attach the adapter to the listView.
                    ListView listView = (ListView) findViewById(R.id.list);
                    listView.setAdapter(Adapter);
                }
            }





            Earthquake_Data.java




            package com.example.android.quakereport;

            public class Earthquake_Data {
                private  double magnitude;
                private  String place;
                private  String date;
                private  String url;

                public double getMagnitude() {
                    return magnitude;
                }

                public String getUrl() {
                    return url;
                }

                public String getPlace() {

                    return place;
                }

                public String getDate() {
                    return date;
                }

                public Earthquake_Data(double Magnitude,String Place , String Date , String Url)
                {
                    magnitude = Magnitude;
                    place = Place;
                    date = Date;
                    url = Url;
                }
            }






    > earthquake_activity.xml





    <?xml version="1.0" encoding="utf-8"?>

    <ListView xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/list"
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:divider="#cac4c4"
        android:dividerHeight="0.3dp" />






    > list_item.xml







         <?xml version="1.0" encoding="utf-8"?>
            <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                xmlns:tools="http://schemas.android.com/tools"
                android:gravity="center_vertical"
                android:orientation="horizontal"
                android:minHeight="?android:attr/listPreferredItemHeight"
                android:padding="16dp">

                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:orientation="horizontal"
                    >

                    <TextView
                        android:id="@+id/magnitude"
                        android:layout_width="36dp"
                        android:layout_height="36dp"
                        android:gravity="center"
                        android:fontFamily="sans-serif"
                        android:typeface="sans"
                        android:textStyle="bold"
                        android:background="@drawable/magnitude_circle"
                        android:layout_gravity="center"
                        android:textColor="@color/colorPrimaryDark"
                        android:textSize="18sp"
                        tools:text="8.9"
                        />

                </LinearLayout>

                <LinearLayout
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="horizontal"
                    android:paddingLeft="16dp"
                    android:paddingStart="16dp"
                    >
                    <TextView
                        android:id="@+id/place"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:typeface="serif"
                        android:layout_gravity="center"
                        android:layout_weight="1"
                        android:textStyle="normal"
                        android:layout_marginLeft="5dp"
                        android:layout_marginStart="5dp"
                        />

                </LinearLayout>

                <LinearLayout
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:orientation="horizontal"
                    android:paddingLeft="10dp"
                    android:paddingStart="10dp"
                    android:layout_gravity="center">

                    <TextView
                        android:id="@+id/date"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:typeface="serif"
                        android:layout_gravity="center" />

                </LinearLayout>



            </LinearLayout>

0 个答案:

没有答案