We develop a new proximal-gradient method for minimizing the sum of a differentiable, possibly nonconvex,function plus a convex, possibly nondifferentiable, function. The key features of the proposed method are thedefinition of a suitable descent direction, based on the proximal operator associated to the convex part ofthe objective function, and an Armijo-like rule to determine the stepsize along this direction ensuring thesufficient decrease of the objective function. In this frame, we especially address the possibility ofadopting a metric which may change at each iteration and an inexact computation of the proximal point definingthe descent direction. For the more general nonconvex case, we prove that all limit points of the iteratessequence are stationary, while for convex objective functions we prove the convergence of the whole sequenceto a minimizer, under the assumption that a minimizer exists. In the latter case, assuming also that thegradient of the smooth part of the objective function is Lipschitz, we also give a convergence rate estimate,showing the ${\mathcal O}(\frac 1 k)$ complexity with respect to the function values. We also discussverifiable sufficient conditions for the inexact proximal point and present the results of two numericaltests on total-variation-based image restoration problems, showing that the proposed approach is competitivewith other state-of-the-art methods.